568 Commits over 426 Days - 0.06cph!
merge from indirect_instancing (for real this time)
merge from indirect_instancing
* Moved fallback bounds transformation to a job
* Removed old fallback culling code
Cleanup: Remove old MotionList code
* Fixed objects in fallback renderer not updating correctly when in motion.
* Added profiler markers for draw call submission of instanced and fallback renderers.
* Fixed streaming_use_mesh_uv_distribution_metrics not actually doing anything.
Fix 2 NREs with Indirect Instancing enabled
* Convert INDIRECT_INSTANCING_ON to a global keyword because it kind of is global
* Make sure INDIRECT_INSTANCING_ON is always defined in the GCINCLUDE section (Fixes shipping containers)
* Allow changing indirect_instancing.enabled at any time in the Editor (FIxes entering play mode with it enabled)
Use LOD quality setting "Object Quality" in Indirect Instancing to more closely resemble the LOD switching behavior of the old system.
Try skipping the extra pass to remove null transforms for an extra 0.2 ms (toggleable via ConVar)
Perform application of the motion list transforms in a job for better performance
Merge from indirect_instancing (also force-disables it for non developers)
Set new _INDIRECT_INSTANCING_ON keyword when Indirect Instancing is enabled
Mark all Indirect Instancing ConVars as DeveloperOnly.
Don't include DeveloperOnly commands in autocomplete.
Merge from main (to pull in mac_foliage_tearing_fix)
* Fix randomly disappearing in-motion objects since switching to the new TransformMemory implementation.
* Fix randomly disappearing stationary and in-motion objects in the deep sea.
* Fix concurrent access exception when in-motion objects are destroyed.
add some more debug info to TransformMemory
Improve performance of instances in motion by about 3x by mirroring all swap and copy operations of instance memory into a separate structure, and using that to apply new transforms of instances in motion.
Enable 222 new materials for GPU instancing (If you conflict with this changeset, simply override these changes and manualle re-enable GPU instancing on the affected materials afterwards)
Enable 222 new materials for GPU instancing (If you conflict with this changeset, simply override these changes and manualle re-enable GPU instancing on the affected materials afterwards) [Part 7 of 7, because Plastic is a broken mess]
Enable 222 new materials for GPU instancing (If you conflict with this changeset, simply override these changes and manualle re-enable GPU instancing on the affected materials afterwards) [Part 6 of X, because Plastic is a broken mess]
Enable 222 new materials for GPU instancing (If you conflict with this changeset, simply override these changes and manualle re-enable GPU instancing on the affected materials afterwards) [Part 4 of X, because Plastic is a broken mess]
Enable 222 new materials for GPU instancing (If you conflict with this changeset, simply override these changes and manualle re-enable GPU instancing on the affected materials afterwards) [Part 5 of X, because Plastic is a broken mess]
Enable 222 new materials for GPU instancing (If you conflict with this changeset, simply override these changes and manualle re-enable GPU instancing on the affected materials afterwards) [Part 3 of X, because Plastic is a broken mess]
Enable 222 new materials for GPU instancing (If you conflict with this changeset, simply override these changes and manualle re-enable GPU instancing on the affected materials afterwards) [Part 2 of X, because Plastic is a broken mess]
Enable 222 new materials for GPU instancing (If you conflict with this changeset, simply override these changes and manualle re-enable GPU instancing on the affected materials afterwards) [Part 1 of X, because Plastic is a broken mess]
merge indirect_instancing fixes
Fix wrong lighting in underground scenarios by issuing instanced draw calls earlier in frames where reflection are rendered.
Actually apply and respect render layers when instancing
▅▋▉█▄: ▋▇█ ▌▄▉ ▅▆▌▅ ▊▌▍▇▊▆▆█ ██▉▋▇▄▋▇▉█ ▊▊ ▊▅▍▋▄▊▆█
Fix NRE when Indirect Instancing is disabled
▋█▍ ▉▍▍▇█▉█▇ ▅▌█▉█▆▋▌▊▌ ▌▇▅▋▄▇▅▄▆▋▋▆ ▆▇▌▆▋ ▊▌▌▆▅▇▉ ▋▋ ▅▅▆▌█▌▇
Fix Indirect Instancing accidentally being enabled by default
▇▌▍█▉ █▄▌▆▉ ▊▉▆▄ █▉▆▅▊▄▅▇_▅▅▉▇▇▉▅▉▌█ (▍▅▇▄▊ █▆█▌ #▆)
▊▇█▇▆ ▄▌▇▊ ▋▍▊▌█▍█▅_▄▉▄█▄▆▇▄▅▄
▌▇▉▋▊ ▅▅▌▉██▇▅ ▊▄▌▍█▄▉▆▍█ █▇▆█▍
Replace range_terrain_mound_a (negative scale) with range_terrain_mound_b and adjust position.
* Fix lights at monuments always visually on
* Fix levers not animating properly
Fix workshop skins not loading when Indirect Instancing is enabled
Naval + Indirect Instancing smoke test
▅▉▌▄▊ █▆▇▊▆█▉▆ ▆▋▄▇▆▅█▍▇▌ ▊▊▇▄▍
Allow indirect_instancing.debug to be toggled at runtime
Fix chandelier chain stretching (it actually never did) by properly instancing the _MainTex_ST property
Check for valid material before submitting a draw call
▌▊▄▇▌ ▊▉▇▅▉▆▍▍ ▉▊▋▍█▍▅▊▄▊ ▌▍█▉▆