godot/scene/3d
jfons 3a53ae5d9f Implement visibility range and dependencies.
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).
2021-06-14 12:17:11 +02:00
..
area_3d.cpp Merge pull request #42742 from madmiraal/fix-12215 2021-05-18 20:00:48 +02:00
area_3d.h Merge pull request #42742 from madmiraal/fix-12215 2021-05-18 20:00:48 +02:00
audio_stream_player_3d.cpp Merge pull request #38224 from Calinou/increase-audiostreamplayer3d-unit-size 2021-06-03 16:56:38 +02:00
audio_stream_player_3d.h Increase the default AudioStreamPlayer3D unit size to 10 2021-05-06 02:45:46 +02:00
bone_attachment_3d.cpp Initialize class variables with default values in scene/ [1/2] 2021-02-07 22:29:31 +01:00
bone_attachment_3d.h Initialize class variables with default values in scene/ [1/2] 2021-02-07 22:29:31 +01:00
camera_3d.cpp Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
camera_3d.h Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
collision_object_3d.cpp Rename CollisionObject3D input_event signal position and normal parameters 2021-06-07 08:52:24 +01:00
collision_object_3d.h Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
collision_polygon_3d.cpp KinematicBody split between new CharacterBody and PhysicsBody 2021-06-04 11:40:36 -07:00
collision_polygon_3d.h Use Array for node configuration warnings 2021-04-11 23:25:38 -05:00
collision_shape_3d.cpp KinematicBody split between new CharacterBody and PhysicsBody 2021-06-04 11:40:36 -07:00
collision_shape_3d.h Create CollisionObject3D debug shapes using RS 2021-05-05 09:12:50 +02:00
cpu_particles_3d.cpp Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
cpu_particles_3d.h Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
decal.cpp Hide more options of disabled properties 2021-03-03 20:51:35 -03:00
decal.h Hide more options of disabled properties 2021-03-03 20:51:35 -03:00
gpu_particles_3d.cpp Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
gpu_particles_3d.h Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
gpu_particles_collision_3d.cpp Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
gpu_particles_collision_3d.h Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
immediate_geometry_3d.cpp Initialize class variables with default values in scene/ [1/2] 2021-02-07 22:29:31 +01:00
immediate_geometry_3d.h Initialize class variables with default values in scene/ [1/2] 2021-02-07 22:29:31 +01:00
light_3d.cpp Use Array for node configuration warnings 2021-04-11 23:25:38 -05:00
light_3d.h Use Array for node configuration warnings 2021-04-11 23:25:38 -05:00
lightmap_gi.cpp Core: Move DirAccess and FileAccess to core/io 2021-06-11 14:52:39 +02:00
lightmap_gi.h Rename GI Classes 2021-06-05 09:28:56 -03:00
lightmap_probe.cpp Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
lightmap_probe.h Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
lightmapper.cpp Implement occlusion culling 2021-04-23 21:45:23 +02:00
lightmapper.h Rename Reference to RefCounted 2021-06-11 18:48:42 +02:00
listener_3d.cpp Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
listener_3d.h Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
mesh_instance_3d.cpp Fix accessing scene tree without checking: MeshInstance3D::create_debug_tangents, GIProbe::bake 2021-05-16 14:01:01 +02:00
mesh_instance_3d.h Expose creating multiple-convex-collision static bodies to GDScript 2021-04-27 06:56:04 +03:00
multimesh_instance_3d.cpp Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
multimesh_instance_3d.h Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
navigation_agent_3d.cpp Fix NavigationAgent3D not emitting "target_reached" Signal 2021-04-27 12:31:50 +02:00
navigation_agent_3d.h Fix NavigationAgent3D not emitting "target_reached" Signal 2021-04-27 12:31:50 +02:00
navigation_obstacle_3d.cpp Use Array for node configuration warnings 2021-04-11 23:25:38 -05:00
navigation_obstacle_3d.h Use Array for node configuration warnings 2021-04-11 23:25:38 -05:00
navigation_region_3d.cpp Use Array for node configuration warnings 2021-04-11 23:25:38 -05:00
navigation_region_3d.h Use Array for node configuration warnings 2021-04-11 23:25:38 -05:00
node_3d.cpp Implement visibility range and dependencies. 2021-06-14 12:17:11 +02:00
node_3d.h Implement visibility range and dependencies. 2021-06-14 12:17:11 +02:00
occluder_instance_3d.cpp Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
occluder_instance_3d.h Implement occlusion culling 2021-04-23 21:45:23 +02:00
path_3d.cpp Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
path_3d.h Use Array for node configuration warnings 2021-04-11 23:25:38 -05:00
physics_body_3d.cpp Use degrees instead of rad for floor_max_angle property in CharacterBody 2021-06-08 16:00:31 -07:00
physics_body_3d.h Rename Reference to RefCounted 2021-06-11 18:48:42 +02:00
physics_joint_3d.cpp Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
physics_joint_3d.h Use Array for node configuration warnings 2021-04-11 23:25:38 -05:00
position_3d.cpp Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
position_3d.h Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
proximity_group_3d.cpp Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
proximity_group_3d.h Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
ray_cast_3d.cpp Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
ray_cast_3d.h Adding Raycast3D custom debug shape thickness and color 2021-03-04 11:17:26 +01:00
reflection_probe.cpp Tweak dozens of editor property hints for consistency 2021-05-25 02:50:35 +02:00
reflection_probe.h Initialize class variables with default values in scene/ [1/2] 2021-02-07 22:29:31 +01:00
remote_transform_3d.cpp Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
remote_transform_3d.h Use Array for node configuration warnings 2021-04-11 23:25:38 -05:00
SCsub Disable Skeleton3D when compiling without 3D 2021-06-04 08:33:50 -04:00
skeleton_3d.cpp Disable Skeleton3D when compiling without 3D 2021-06-04 08:33:50 -04:00
skeleton_3d.h Rename Reference to RefCounted 2021-06-11 18:48:42 +02:00
skeleton_ik_3d.cpp Rename Variant TRANSFORM to TRANSFORM3D 2021-06-03 07:30:01 -04:00
skeleton_ik_3d.h Rename files and the exposed name for Transform3D 2021-06-03 07:30:01 -04:00
soft_body_3d.cpp Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
soft_body_3d.h Use Array for node configuration warnings 2021-04-11 23:25:38 -05:00
spring_arm_3d.cpp Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
spring_arm_3d.h Initialize class variables with default values in scene/ [1/2] 2021-02-07 22:29:31 +01:00
sprite_3d.cpp Fixed a bunch of connection errors in TextureEditorPlugin 2021-06-12 08:01:02 +03:00
sprite_3d.h Change frame_coords to Vector2i 2021-05-23 21:38:27 +02:00
vehicle_body_3d.cpp Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
vehicle_body_3d.h Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
velocity_tracker_3d.cpp Initialize class variables with default values in scene/ [1/2] 2021-02-07 22:29:31 +01:00
velocity_tracker_3d.h Rename Reference to RefCounted 2021-06-11 18:48:42 +02:00
visibility_notifier_3d.cpp More explanatory names for RigidBody modes 2021-06-04 11:40:36 -07:00
visibility_notifier_3d.h Initialize class variables with default values in scene/ [1/2] 2021-02-07 22:29:31 +01:00
visual_instance_3d.cpp Implement visibility range and dependencies. 2021-06-14 12:17:11 +02:00
visual_instance_3d.h Implement visibility range and dependencies. 2021-06-14 12:17:11 +02:00
voxel_gi.cpp Rename GI Classes 2021-06-05 09:28:56 -03:00
voxel_gi.h Rename GI Classes 2021-06-05 09:28:56 -03:00
voxelizer.cpp Rename GI Classes 2021-06-05 09:28:56 -03:00
voxelizer.h Rename GI Classes 2021-06-05 09:28:56 -03:00
world_environment.cpp Use Array for node configuration warnings 2021-04-11 23:25:38 -05:00
world_environment.h Use Array for node configuration warnings 2021-04-11 23:25:38 -05:00
xr_nodes.cpp Add stereoscopic rendering through multiview 2021-06-13 22:52:20 +10:00
xr_nodes.h Use Array for node configuration warnings 2021-04-11 23:25:38 -05:00