virtualx-engine/servers/rendering
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
..
renderer_rd Add stereoscopic rendering through multiview 2021-06-13 22:52:20 +10:00
rasterizer_dummy.h Add stereoscopic rendering through multiview 2021-06-13 22:52:20 +10:00
renderer_canvas_cull.cpp Deleted YSort, moved its functionality directly into Node2D. 2021-06-05 00:55:25 -07:00
renderer_canvas_cull.h Deleted YSort, moved its functionality directly into Node2D. 2021-06-05 00:55:25 -07:00
renderer_canvas_render.cpp Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
renderer_canvas_render.h [4] Fix canvas rect bound calculation 2021-05-28 09:04:24 +01:00
renderer_compositor.cpp Add stereoscopic rendering through multiview 2021-06-13 22:52:20 +10:00
renderer_compositor.h Add stereoscopic rendering through multiview 2021-06-13 22:52:20 +10:00
renderer_scene.cpp Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
renderer_scene.h Implement visibility range and dependencies. 2021-06-14 12:17:11 +02:00
renderer_scene_cull.cpp Implement visibility range and dependencies. 2021-06-14 12:17:11 +02:00
renderer_scene_cull.h Implement visibility range and dependencies. 2021-06-14 12:17:11 +02:00
renderer_scene_occlusion_cull.cpp Implement occlusion culling 2021-04-23 21:45:23 +02:00
renderer_scene_occlusion_cull.h Rename Transform to Transform3D in core 2021-06-03 07:30:01 -04:00
renderer_scene_render.cpp Add stereoscopic rendering through multiview 2021-06-13 22:52:20 +10:00
renderer_scene_render.h Add stereoscopic rendering through multiview 2021-06-13 22:52:20 +10:00
renderer_storage.cpp Rewrite render code to be more cache and thread friendly. 2021-01-05 08:50:18 -03:00
renderer_storage.h Add stereoscopic rendering through multiview 2021-06-13 22:52:20 +10:00
renderer_thread_pool.cpp Threaded optimizations to cull and render 2021-01-05 08:50:18 -03:00
renderer_thread_pool.h Threaded optimizations to cull and render 2021-01-05 08:50:18 -03:00
renderer_viewport.cpp Implement visibility range and dependencies. 2021-06-14 12:17:11 +02:00
renderer_viewport.h Add stereoscopic rendering through multiview 2021-06-13 22:52:20 +10:00
rendering_device.cpp Implement shader caching 2021-05-31 10:13:09 +02:00
rendering_device.h Add stereoscopic rendering through multiview 2021-06-13 22:52:20 +10:00
rendering_device_binds.cpp Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
rendering_device_binds.h Rename Reference to RefCounted 2021-06-11 18:48:42 +02:00
rendering_server_default.cpp Refactor CommandQueueMT 2021-06-09 13:10:49 -03:00
rendering_server_default.h Implement visibility range and dependencies. 2021-06-14 12:17:11 +02:00
rendering_server_globals.cpp Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
rendering_server_globals.h Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
SCsub RenderingServer reorganization 2020-12-04 18:39:46 -03:00
shader_language.cpp Prevent shader crash when returning array when return type is scalar 2021-06-06 14:59:52 +03:00
shader_language.h Fix length() array function usage in shader 2021-06-10 10:04:28 +03:00
shader_types.cpp Add stereoscopic rendering through multiview 2021-06-13 22:52:20 +10:00
shader_types.h Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
shader_warnings.cpp Basic warning support implementation for the Godot Shading Language. 2021-05-22 19:24:31 +03:00
shader_warnings.h Basic warning support implementation for the Godot Shading Language. 2021-05-22 19:24:31 +03:00