branchrust_reboot/main/indirect_instancingcancel

153 Commits over 212 Days - 0.03cph!

Today
Unify LOD showing/hiding logic and ensure that Hide() is called when a state is covered by instancing
Yesterday
Made shadows toggleable
Yesterday
do not copy shadow mode from renderer to avoid rendering shadows twice
Yesterday
revert protocol version
2 Days Ago
Re-enabled instancing for the Nature/Cliff shaders
2 Days Ago
- Fixed invisible objects due to state information ending up wrong in the prefab pool - Fixed method ambiguity build error in BufferList - Merged aggressiveShadowLod optimisation into InstancedLODComponent - Allow RendererLOD collapsing when instancing is enabled - Added stats about fallback rendering to indirect instancing diagnostics - Fixed shadow proxy detection - Avoid leaking memory by actually destroying monster meshes before recreating them
5 Days Ago
native libraries
5 Days Ago
- Found a way to unity instance adding/removal code under InstancedLODComponent. This is starting to look very solid now. - Started extending BufferList to work with Span<T> - Added ArrayPoolBufferList as an experiment
5 Days Ago
Fix compilation error about RecordUnsupportedMaterial
5 Days Ago
fix native library issue
6 Days Ago
fix server build
6 Days Ago
Removed some leftover debug stuff
6 Days Ago
- MeshCull, MeshLOD and RendererLOD are now able to add their states to the instancing system themselves without the need for a RustRenderer. - Fully decoupled InstanceCreationInfo from *Renderer for more flexibility. - Added an `autoconnect` ConVar (editor only) to speed up debugging on external servers - Improved debugging by adding Robocop vision. New ConVar: indirect_instancing.debug - Added InstancedLODComponent to cover the instancing needs of MeshCull, MeshLOD and RendererLOD - Tools: Record unsupported materials during play mode so that they can be fixed later - Tools: More progress bars for long operations - InstancedDebugDraw: Fixed not updating properly due to missing damage tracking on the command buffer - Introduced WrappedRenderer to intercept modifications from other parts of the code. It works, but I'm probably not going to keep this. - Moved all the debug stuff to separate files - Fixed a == vs. = typo in SoundDefinition.AutoAssignAudioClips
9 Days Ago
Enable instancing on all supported materials
9 Days Ago
Enable Read/Write on all prefab meshes
9 Days Ago
Don't fail builds when file timestamps could not be set
9 Days Ago
Improve automated indirect instancing tools
9 Days Ago
Bring back compute changes
9 Days Ago
Bring back supported shader changes and includes
9 Days Ago
Bring back prefab changes
9 Days Ago
Revert execution order changes
9 Days Ago
Revert script changes
9 Days Ago
Revert compute changes
9 Days Ago
Revert prefab changes
9 Days Ago
Revert package changes
9 Days Ago
Revert platform changes
9 Days Ago
Revert changes to shader includes
9 Days Ago
Reverted changes to supported shaders
9 Days Ago
Revert changes to ProjectSettings
9 Days Ago
merge from main
10 Days Ago
Remove instancing support from all non-standard shaders
12 Days Ago
Some .FBX.meta I didn't catch because they were uppercase
12 Days Ago
Revert even more .fbx.meta and .mat files to the state they have on /main
12 Days Ago
Subtract all .mat changes to investigate artifacting issues
12 Days Ago
Subtract all .fbx.meta changes to investigate artifacting issues
12 Days Ago
Fixed InstancedDebugDraw instance and command buffers initially bound to zero
12 Days Ago
don't use sort jobs
12 Days Ago
fix server build
13 Days Ago
Revert ProjectSettings.asset
13 Days Ago
build fix
13 Days Ago
regenerate codegen
13 Days Ago
merge from main
14 Days Ago
- Removed indirect_instancing.enabled toggle (was broken) - Reverted all modifications to MeshLOD, MeshCull, RendererLOD, RendererBatch and other LODComponents
14 Days Ago
- Fixed and optimise debug diagnostics - Use an array instead of a dictionary to store RenderKeys - Added various toggles for controlling which parts of the system run during profiling
14 Days Ago
InstancedDebugDraw: Fix performance issue when re-adding instances each frame
19 Days Ago
Indirect instancing fixes: - Supported shaders are no longer determined at runtime, instead a list is supplied to the component on the main camera prefab. This fixes issues where instanceable objects would end up in the non-instanceable fallback renderer. - Add operations are no longer queued in order to return success/failure states immediately back to the caller. - Remove operations are now queued without relying on managed references, fixing various use-after-destroy issues. - Broadened the use of the InstanceCreationInfo struct to avoid fealing with so many function parameters. - Improved logging when instances can't be added (1) at all or (2) only in the non-instanced fallback renderer. - Fixed exceptions resulting from calling RecalculateUVDistributionMetric() after UploadMeshData()
21 Days Ago
Fixed removing the wrong instance when the swap-back-removal of another instance invalidated the indices by reintroducing instance sequence numbers, but slightly better.
22 Days Ago
Don't rely on managed references when removing instances, use InstanceHandle instead
23 Days Ago
Fix exceptions caused by removal of meshes with less materials than submeshes
23 Days Ago
merge from main