- Each camera's recorded render graph goes to the renderer (
CameraSetGraph, API 55): the textures its passes create, and each full-screen draw as a pass with a material of its own (the draw's, with its property block's values) into a texture or the camera's color, before post-processing or from AfterRenderingPostProcessing on. - The renderer (
crates/render/src/graph.rs) runs a view's passes after its scene (and particles, world-space UI) on the HDR image, then post-processing (into an image of its own when passes follow it), then the later passes, carrying each stage's result on (the camera's color can be replaced by a pass's texture). Views with passes always draw through the HDR image. A pass that would read the texture it draws into is left out. - Custom programs draw full-screen triangles from vertex IDs (
Geometry::Fullscreen); materials bind the frame's textures by reserved keys (TextureHandles convert to stand-in RenderTextures carrying them);_CameraDepthTextureis beside the camera's built-ins, the real depth in graph passes and a 1x1 placeholder elsewhere (a texture can't be sampled while it's the pass's depth attachment). - Shader includes: Blit.hlsl (Vert, _BlitTexture, _BlitScaleBias, the full-screen triangle helpers), DeclareDepthTexture.hlsl (LoadSceneDepth, SampleSceneDepth), URP's global samplers, LOAD_TEXTURE2D_X and friends, ComputeWorldSpacePosition, ComputeNormalizedDeviceCoordinates, the two-argument LinearEyeDepth and Linear01Depth, _ScreenSize and _ScaledScreenParams, and the main light's shadow map as URP names it (_MainLightWorldToShadow, SAMPLE_TEXTURE2D_SHADOW compared as Tassix's own shadows are).
- Screenshots (
--screenshot --size) show scripts the shot's size from the first frame (Screen, cameras' pixel sizes were the window default until the end). - Checked by render_graph_passes_read_the_camera_and_replace_its_color and compiles_a_full_screen_pass; Nitrate's eight atmosphere passes and its film shader compile, and its atmosphere draws (fog, lantern glow, depth blur). Its film material is a Shader Graph, which isn't compiled yet, so its film look is missing.
- Next: Graphics.Blit with a material (the same full-screen draws, into render textures); Shader Graph; SSAO.
Phase 6 · Slice 60 ·