branchrust_reboot/main/render_pipeline_testingcancel
61 Commits over 215 Days - 0.01cph!
post subsurface pass beginnings
bring over WaterCamera changes into RRP
hoarded a bunch of changes:
- refactored vclouds and vfog for multi camera support
- vclouds and vfog ported to RRP with built-in wrappers
- match sky dome pos to camera in RRP, including in scene view
- scale sky dome to camera far plane in RRP
- use CommandBufferManager.OnPreCommandBuffer hook to call OnBeginRendering() in built-in wrappers, fixes update happening after commands buffers were already filled
- share TextureDescs between render graph and built-in wrapper render texture creation. Ensures consistent formats, etc
- fix skybox rendering twice in scene view
- fix water render graph issues on lower quality levels
- fix destruction of water dynamics RTHandle
add CommandBufferManager.OnPreCommandBuffer hook
supply lightdir/color for water again, adjust texture formats
fix double-rendering atmosphere
sync Rust.RenderPipeline changes:
- fix missing shader parameter for legacy shadow caster shaders
- render forward opaque objects (only SRPDefaultUnlit and RustLit light modes, allows atmospheric elements to render)
- make camera context directly accessible by the camera component
- add RustRenderPipeline pipeline shader tag
stopgap water sky reflection until we have the water refl probe in RRP
RRP water rendering progress
sync with Rust.RenderPipeline:
- enable global shader param + keyword when RRP is in use
sync with latest Rust.RenderPipeline changes:
- camera components can return false in OnBeginRendering() to skip rendering the feature for the camera
- reset GraphicsSettings.lightsUseLinearIntensity to false on RRP disposal
(Fixes BiRP lighting becoming dark when switching, it was also possible for
the true value to get saved in GraphicsSettings.asset which confusingly
permanently broke BiRP lighting.)
disable the begin/endContextRendering hooks on CommandBufferManager
update existing passes for pipeline changes
sync Rust.RenderPipeline changes
port PostOpaqueDepth to RRP, prerequisite for water
Fixed various lighting issues within the lit and deferred lighting shaders within RRP
Fixed some indirect lighting issues with the lit shader in RRP
Fixed more issues with shadow biases in the RRP shaders
Added support for light cookies in RRP
RRP: Fixed shadow bias calculations for point and spot lights
Fixed shadow bias issues within the Rust Render Pipeline
Updated the Rust.RenderPipeline package to include lighting stencil value changes
Fixed server compile errors for new decal and environment volume render passes
Added new properties serialized on the DecalsRendererFeature
Added deferred mesh decal rendering support to RRP
Added support for Deferred Decal rendering in the new render pipeline
Updated Rust.RenderPipeline to include debug visualizations for the GBuffer outputs and the indirect lighting targets
Added pipeline textures that get set during the Setup pass. This makes Deferred Indirect Lighting work correctly in the new render pipeline
Fixed the lighting and shadow issues when using the Rust.RenderPipeline
Fixed an issue that was preventing spatial env volumes from rendering and prevented rendering to reflection probes in the new render pass wrapper
Added a check to avoid creating a zero length compute buffer when rendering the spatial environment volumes
Added a wrapper to the SpatialEnvironmentVolumePass to make it work with both BiRP and RRP
Updated the Rust.RenderPipeline package to add support for custom render passes