Skip to content

02. Dashboard & Editor UI

← Previous: Getting Started | Next: Scene Doctor →


Editor Menus & Entry Points

FuzzyOptimizer integrates seamlessly into the Unity Editor toolbar, project context menus, and component menus:

Menu PathCommand / ItemDescription
Window > Fuzzy Logic Labs > FuzzyOptimizerDashboardOpens the central multi-page optimization dashboard.
Window > Fuzzy Logic Labs > FuzzyOptimizerOne-Click Optimize…Opens the automated multi-step optimization pipeline dialog.
Window > Fuzzy Logic Labs > FuzzyOptimizerWelcomeRe-opens the introductory welcome window and quick links.
Window > Fuzzy Logic Labs > FuzzyOptimizerScene View HeatmapToggles the diagnostic Scene View visualizer overlay.
Window > Fuzzy Logic Labs > FuzzyOptimizerHierarchy Issue IconsToggles real-time issue indicator icons directly in the Hierarchy window.
Assets > Fuzzy Logic Labs > FuzzyOptimizerClean Up Unused Generated AssetsScans Assets/FuzzyOptimizer_Generated/ and cleans up orphaned assets.
Assets > Create > FuzzyOptimizerOptimization ProfileCreates a new customizable OptimizerProfile ScriptableObject asset.
Add Component > FuzzyOptimizerRuntime ComponentsAdds components like ZeroAllocPoolManager, GlobalVFXBudgetLimiter, etc. (See Runtime Components).

Dashboard Header

The persistent top header bar contains primary session controls:

  • Target Platform Dropdown: Selects the active target profile (Mobile, Standalone VR, Desktop Mid, Desktop High, or Custom). All performance budgets, audit thresholds, and One-Click recommendations recalculate dynamically.
  • Scan Button (F5): Triggers an immediate re-audit of all currently loaded scenes, updating the health score, issue counts, and budget graphs.

Dashboard Pages

The dashboard is structured into 8 specialized modules:

PagePurpose & Workflow
OverviewDisplays the main Health Score radial gauge, projected score after Safe fixes, platform budget consumption bars (draw calls, triangles, VRAM), recommended next steps, and top bottlenecks.
Scene DoctorThe primary audit interface. Groups detected issues by rule category. Provides search, severity filters, individual fixes, rule-wide batch fixes, and false-positive ignore options. The ⋯ menu exposes Session History, Revert, Export Report, and Audit Build Scenes.
Mesh CombinerMerges static meshes by spatial grid cells with texture atlasing and creates HLOD proxy networks for open environments.
Mesh & CollidersHosts the Burst-compiled Quadric Error Metrics (QEM) decimator, automated LOD chain generator, mesh repair utilities, and low-poly collider generation.
Culling & ImpostorsManages layer-based distance culling, size-based culling, one-click occlusion culling bakes, and multi-angle billboard/impostor generation.
Memory ShieldConfigures zero-allocation object pooling and the global particle VFX budget limiter, complete with live Play Mode telemetry graphs.
ResultsVisualizes before/after optimization metrics, measured FPS improvements, interactive swipe comparisons, and historical benchmark logs.
SettingsManages platform budget thresholds, enables/disables any of the 49 audit rules, configures editor integration flags, and sets up automated Player Build Check gates.

How Metrics Are Calculated

In Edit Mode, metrics are calculated through precision estimation from the perspective of the active MainCamera. The data collector accounts for camera frustum bounds, layer cull distances, and active LOD group transitions to deliver consistent, reproducible metrics across scans:

  • Draw Calls & Batches: Accounts for the main camera forward/deferred pass plus shadow caster passes. Accurately simulates the effects of Static Batching, GPU Instancing, the SRP Batcher, and the GPU Resident Drawer.
  • Visible Triangles, Vertices, and SetPass Calls: Evaluated strictly for renderers visible within the camera frustum.
  • Texture VRAM: Aggregates unique texture memory consumed by materials visible to the active camera.

Scene View Heatmap

Access via Window > Fuzzy Logic Labs > FuzzyOptimizer > Scene View Heatmap or through the FuzzyOptimizer Heatmap overlay button in the Scene View toolbar.

The heatmap tints scene objects using visual false-color gradients and pins informative diagnostic badges on the worst offenders:

ModeDiagnostic Color Visualization
Triangle DensityEvaluates triangles per square meter ($m^2$) of surface area on a logarithmic scale relative to viewport visibility. Hot red identifies microscopic polygons and dense geometry.
Draw CallsVisualizes draw calls per renderer based on submesh/material count: Green (1 call), Yellow (2–3 calls), Red (5+ calls).
Shadow CastersHighlights shadow casters: Red identifies tiny objects casting shadows below the platform size threshold; Yellow identifies larger shadow casters.
TransparencyHighlights transparent and alpha-tested geometry (overdraw cost). Deeper red indicates larger screen coverage and high blend overhead.
Audit IssuesDisplays the worst Scene Doctor issue for each object: Red (Critical), Yellow (Warning), Green (Info). Requires running an audit scan first.

Hierarchy Issue Icons

When enabled, FuzzyOptimizer marks problematic GameObjects directly in the Unity Hierarchy window with clear color-coded severity badges:

  • Hover: Displays a tooltip listing all issues associated with that GameObject.
  • Click: Opens the FuzzyOptimizer Dashboard, navigates to Scene Doctor, and filters directly to that object’s issue.
  • Toggle: Easily enabled or disabled via Window > Fuzzy Logic Labs > FuzzyOptimizer > Hierarchy Issue Icons or in the dashboard Settings tab.

Cleaning Up Generated Assets

When running mesh combining, texture packing, or LOD generation, assets are written cleanly to Assets/FuzzyOptimizer_Generated/. If you subsequently delete combined objects or roll back experimental setups outside the session manager, orphaned files can accumulate.

Select Assets > Fuzzy Logic Labs > FuzzyOptimizer > Clean Up Unused Generated Assets to perform an instant asset dependency audit. Any generated file not referenced by any scene or prefab in your project is identified and safely moved to the OS Trash after your explicit confirmation.