userFelixcancel
branchrust_reboot/main/indirect_instancingcancel

243 Commits over 274 Days - 0.04cph!

3 Months Ago
fix native library issue
3 Months Ago
fix server build
3 Months Ago
Removed some leftover debug stuff
3 Months 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
3 Months Ago
Enable instancing on all supported materials
3 Months Ago
Enable Read/Write on all prefab meshes
3 Months Ago
Don't fail builds when file timestamps could not be set
3 Months Ago
Improve automated indirect instancing tools
3 Months Ago
Bring back compute changes
3 Months Ago
Bring back supported shader changes and includes
3 Months Ago
Bring back prefab changes
3 Months Ago
Revert execution order changes
3 Months Ago
Revert compute changes
3 Months Ago
Revert script changes
3 Months Ago
Revert prefab changes
3 Months Ago
Revert package changes
3 Months Ago
Revert platform changes
3 Months Ago
Revert changes to shader includes
3 Months Ago
Reverted changes to supported shaders
3 Months Ago
Revert changes to ProjectSettings
3 Months Ago
merge from main
3 Months Ago
Remove instancing support from all non-standard shaders
3 Months Ago
Some .FBX.meta I didn't catch because they were uppercase
3 Months Ago
Revert even more .fbx.meta and .mat files to the state they have on /main
3 Months Ago
Subtract all .mat changes to investigate artifacting issues
3 Months Ago
Subtract all .fbx.meta changes to investigate artifacting issues
3 Months Ago
Fixed InstancedDebugDraw instance and command buffers initially bound to zero
3 Months Ago
don't use sort jobs
3 Months Ago
fix server build
3 Months Ago
Revert ProjectSettings.asset
3 Months Ago
build fix
3 Months Ago
regenerate codegen
3 Months Ago
merge from main
3 Months Ago
- Removed indirect_instancing.enabled toggle (was broken) - Reverted all modifications to MeshLOD, MeshCull, RendererLOD, RendererBatch and other LODComponents
3 Months 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
3 Months Ago
InstancedDebugDraw: Fix performance issue when re-adding instances each frame
3 Months 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()
3 Months 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.
3 Months Ago
Don't rely on managed references when removing instances, use InstanceHandle instead
3 Months Ago
Fix exceptions caused by removal of meshes with less materials than submeshes
3 Months Ago
merge from main
3 Months Ago
A week's worth of fixes for indirect: - Added a `spawnprefab` editor-only command that allows to spawn (and pre-process) any prefab for testing. - Moved indirect ConVar stuff to a proper indirect_instancing.cs - Temporarily removed Core/* shaders from the compatibility list because indirect support is unclear. - Revamped the indirect compatibility decision logic to be more granular and robust. - Fixed invisible models when a renderer in instanceable but none of its materials are. - Fixed NRE when encoundering null materials. - Added TryEnqueueAdd which gives feedback about when enqueing a renderer failed due to incompatibility. - Downgraded assertion exception when a shader wasn't found to just a warning. - Reworked RejectReason structure to a struct fully interoperable with bool. - RustRenderer now remembers original shadow casting modes so that they can be restored when indirect rendering is disabled. - Store errors reported by TryEnqueueAdd in RustRenderer for debug purposes. - Automatically disable RustRenderer if object is a shadow proxy. - Automatically disable RustRenderer if any submeshes are incompatible with either indirect or fallback rendering.
3 Months Ago
Fixed shader errors about missing implementations of vertInstancingSetup
3 Months Ago
merge from main
4 Months Ago
Fix construction guide not appearing
4 Months Ago
merge from main
4 Months Ago
Changed implementation to only render colour pass and leave shadow culling and rendering to Unity
4 Months Ago
Added some debug ConVars
4 Months Ago
Fixed various causes that could render meshes twice
4 Months Ago
Add queue system for adding/removing instances to prevent colliding with the jobs