mirror of https://github.com/godotengine/godot
This commit adds the following properties to GeometryInstance3D: `visibility_range_begin`, `visibility_range_begin_margin`, `visibility_range_end`, `visibility_range_end_margin`. Together they define a range in which the GeometryInstance3D will be visible from the camera, taking hysteresis into account for state changes. A begin or end value of 0 will be ignored, so the visibility range can be open-ended in both directions. This commit also adds the `visibility_parent` property to 'Node3D'. Which defines the visibility parents of the node and its subtree (until another parent is defined). Visual instances with a visibility parent will only be visible when the parent, and all of its ancestors recursively, are hidden because they are closer to the camera than their respective `visibility_range_begin` thresholds. Combining visibility ranges and visibility parents users can set-up a quick HLOD system that shows high detail meshes when close (i.e buildings, trees) and merged low detail meshes for far away groups (i.e. cities, woods). |
||
|---|---|---|
| .. | ||
| 2d | ||
| 3d | ||
| animation | ||
| audio | ||
| debugger | ||
| gui | ||
| main | ||
| resources | ||
| SCsub | ||
| register_scene_types.cpp | ||
| register_scene_types.h | ||
| scene_string_names.cpp | ||
| scene_string_names.h | ||