Skip to content

داشبورد (Dashboard)

داشبورد یک پنل کنترل و Profiler قدرتمند درون‌بازی است. این امکان را به شما می‌دهد تا عملکرد افزونه را نظارت کنید، زمان‌بندی فریم‌ها را تحلیل کنید و به‌صورت دستی سطوح Scaler را مستقیماً در خروجی در حال اجرا لغو (Override) کنید.

نحوه استفاده

تنها کافیست فایل Dashboard.prefab را بکشید و در هر صحنه‌ای از پروژه خود رها کنید.
این Prefab به‌طور خودکار به‌عنوان DontDestroyOnLoad تنظیم می‌شود و در طول انتقال بین صحنه‌ها فعال باقی می‌ماند.

نکاتی برای نسخه نهایی (Production Build)

داشبورد کاملاً از هسته افزونه جدا است. قبل از انتشار بازی خود، به‌سادگی این Prefab را از صحنه پاک کنید. سیستم Code Stripping انجین Unity به‌طور خودکار تمام کدهای داشبورد را از نسخه نهایی حذف خواهد کرد (که از حجیم شدن پوشه Resources جلوگیری می‌کند) و وزن پروژه را در حداقل نگه می‌دارد. هسته WebAP همچنان به‌طور نامرئی در پس‌زمینه اجرا خواهد شد.

پنل سمت چپ (کنترل‌ها)

سمت چپ داشبورد برای تعامل بلادرنگ با افزونه طراحی شده است.

  • Enable Web AP
    سوئیچ اصلی هسته افزونه. در صورت غیرفعال شدن، بهینه‌سازی خودکار متوقف شده و تمام پارامترهای گرافیکی به مقادیر اصلی (حداکثر) خود بازمی‌گردند.
  • Anti Yo-Yo Protection
    Penalty Lockout را روشن یا خاموش می‌کند. در صورت غیرفعال شدن، افزونه می‌تواند بدون قفل‌های زمانی به‌طور مداوم کیفیت گرافیک را افزایش و کاهش دهد.
    (جزئیات بیشتر: سیستم ضد یویو)
  • Active Scalers
    فهرستی از تمام ماژول‌های بهینه‌سازی اضافه‌شده به سیستم.
    • Toggle (سوئیچ): به‌طور کامل یک Scaler خاص را به‌صورت پویا فعال یا غیرفعال می‌کند.
    • Slider (نوار لغزان): به‌طور دستی سطح کیفیت را نادیده می‌گیرد (Override Level). مقدار 0 به معنای حداکثر کیفیت است. اگر این نوار را حرکت دهید، Indexer مدیریت این Scaler را متوقف کرده و به شما اجازه می‌دهد تا تأثیر آن را بر بازی خود به‌صورت بصری ارزیابی کنید.
    • Resolution Mode (حالت وضوح): یک تنظیم اختصاصی برای Resolution Scaler (در حالت BiRP). به شما اجازه می‌دهد به‌طور پویا بین استراتژی‌های NativeBrowserScaling و RenderTextureScaling جابجا شوید.
      (جزئیات بیشتر: مرجع Scalerها)

پنل سمت راست (تحلیل‌ها)

سمت راست، متریک‌های خام انجین و منطق داخلی «مغز» افزونه را نمایش می‌دهد. از الگوریتم‌های Zero-GC میانگین متحرک نمایی (Exponential Moving Average) برای صاف کردن نمودارها استفاده می‌شود.

متریک‌ها و زمان‌بندی‌ها (Metrics & Timings)

  • Target Min FPS: هدف پایه عملکرد که از تنظیمات پروژه شما استخراج شده است.
  • Current FPS: نرخ فریم فعلی با نمودار تاریخچه پرش‌ها.
  • Current Scale / DPI: ضریب فعلی وضوح. مقدار 1.00 نشان‌دهنده وضوح اصلی است. مقادیر پایین‌تر (مثلاً 0.50) نشان می‌دهند که جهان 3D برای ذخیره GPU کاهش وضوح داشته است.
  • Frame Time / CPU Time: زمان‌های دقیق سخت‌افزار جمع‌آوری شده از طریق FrameTimingManager. این‌ها کمک می‌کنند تا بفهمید پردازنده چه مقدار زمان واقعی را صرف منطق فریم می‌کند.

مغز افزونه (Plugin Brain)

منطق خط لوله تصمیم‌گیری را نمایش می‌دهد.
(جزئیات بیشتر: چگونه کار می‌کند)

  • Bottleneck: تشخیص می‌دهد که در حال حاضر کدام زیرسیستم دستگاه باعث تأخیر می‌شود (CPU، GPU، TargetFrameRate یا Unknown).
  • Action: نشان می‌دهد که Indexer قصد دارد چه کاری انجام دهد (IncreaseQuality، DecreaseQuality یا Stale — اگر هیچ اقدامی لازم نباشد).
  • Status (زیر Action): وضعیت سیستم: Monitoring... (ارزیابی فریم‌ها)، Cooldown (انتظار برای پایداری پس از تغییر گرافیک)، یا Penalty Lockout (جریمه ضد یویو فعال است).

فعال (Active)

  • فهرستی از Scalerهایی که در حال حاضر توسط سیستم برای حفظ عملکرد کاهش یافته‌اند. اگر FPS بالا باشد و همه‌چیز بهینه باشد، مقدار - None را نمایش می‌دهد.