public struct LodGroupComponentThe switch points of one LOD group, on the entity its levels hang from.
Remarks
A group is a parent and its levels are its children, which is the one identity the scene already has. LodRenderFeature chooses one level per group per view, so the group has to be per authored object rather than per set of thresholds — two trees sharing a threshold list are two groups, and interning by the numbers would lock them to one level between them.
The levels are the children carrying LodLevel, in no particular order: which level a child is is the number it carries, not its place in the list. A child with no LodLevel is not part of the group and is drawn whatever the group is showing — a collider, a light or a socket hanging off the same parent.
⚠ An array on a component, which most of them do not have. The count is the group's and a component is one size for every entity in a chunk; BlendShapeWeights holds an array for the same reason and pays the same price — this is a managed component, so a system reads one entity at a time rather than through Chunk.ReadValues.
⚠ Null and empty both mean "one level", and neither is a mistake. Four levels take three thresholds, so no thresholds is a group of one — which is what a zeroed column reads as, and drawing the only level is the right answer for it.
Fields and properties (1)
public float[]? ThresholdsThe screen-height fraction below which each level gives way to the next, descending.
Used by (11)
- ComponentRegistrationVixen.Rendering
- LodExtractionSystemVixen.Engine.Renderer
- LodExtractionTestsVixen.Engine.Renderer.Tests
- TypeRegistrationVixen.Rendering
- Vixen_Rendering_Ecs_LodGroupComponentSerializerVixen.Rendering
- EditorApplicationVixen.Editor.App
- EditorWorldRendererTestsVixen.Editor.App.Tests
- LodGroupGestureTestsVixen.Editor.App.Tests
- LodRangeTestsVixen.Editor.SceneView.Tests
- MaterialIconsVixen.Editor.App
- SceneLinesVixen.Editor.SceneView