branchrust_reboot/main/optimize_reduce_dynamic_occlusioncancel
7 Commits over 0 Days - ∞cph!
Set dynamic_occlusion_pausing to enabled instead of disabled
Switch certain dynamic occlusion entities to static occludees when we know they can't move
- convar `dynamic_occlusion_pausing` (0 = off, 1 = codelocks + industrial adapters on boxes, 2 = codelocks on doors)
- currently (and by default) every entity is considered dynamic if parented
- now certain entities can indicate if they are static (like boxes)
- converts codelocks to dynamic while the door is opening, converts back to static once finished
- will check all parents so a box parented to a tugboat will still be considered dynamic since it will find the tugboat as root parent
- reduces dynamic ocludee count by 80% (417->74) on a sample base (converts nearly all codelocks and industrial adapters)
- refresh entity dynamic status when running `refresh_renderers`
Make dynamicOccludees list public so it works with the command
Set industrial adapter to not be dynamic
- still gets set to dynamic at all times since it's always spawned parented to an entity
Add `print_occlusion` command to print the amount of dynamic ocludees