Vixen
02b45cc4
csharp
public sealed class ComponentGizmos

The pass that runs every contributed gizmo over a scene.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

⚠ Here rather than in SceneLines, because the bridges are not here. Resolving a Type to "is it on this entity, and what is its value" is IComponentBridge's job, and the list of bridges is assembled by the application — it needs the behaviour store, which needs the scene. SceneLines holds one of these and calls it; whoever has both halves builds it.

⚠ The bridge map is rebuilt when the bridge list changes length. Behaviour bridges appear when a project's game assembly loads, which is after the first frame is drawn — a map built once in a constructor would miss every behaviour gizmo in the session that loaded them.

Methods (2)

  • public ComponentGizmos(IReadOnlyList<IComponentBridge> bridges, IEditorRegistry extensions)

    Runs the gizmos a registry holds, over the bridges an application assembled.

  • public void Build(SceneDocument document, GizmoDraw draw)

    Draws every registered gizmo for every entity that has its component.

Used by (3)

  • ComponentGizmoTestsVixen.Editor.SceneView.Tests
  • SceneLinesVixen.Editor.SceneView
  • SceneViewportVixen.Editor.SceneView