Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 10 additions & 7 deletions OloEditor/SandboxProject/Assets/Scenes/Benchmark/Courtyard.olo
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: Courtyard.olo
Version: 1
RenderingPath: Deferred
# ─────────────────────────────────────────────────────────────────────────────
# DENSE ARCHITECTURAL / FOLIAGE benchmark scene (issue #974).
#
Expand All @@ -23,10 +24,11 @@ Version: 1
# * A 48-tower InstancedMeshComponent massing ring at radius ~420-520 for
# geometry at depth (fog integration + culling).
#
# The renderer-side switches the scene cannot serialize (Path=Deferred,
# EnableDDGI, TAA) are applied by the capture manifests under
# OloEditor/assets/benchmark/manifests/courtyard.*.yaml — open this scene by
# hand and you must set Deferred + DDGI yourself in Renderer Settings.
# The scene selects the Deferred path itself (RenderingPath above). The
# renderer-side switches it cannot serialize are applied by the capture
# manifests under OloEditor/assets/benchmark/manifests/courtyard.*.yaml:
# EnableDDGI by all three, TAAEnabled by golden and diagnostic. Open this scene
# by hand and you must enable DDGI (and TAA, if wanted) yourself.
#
# GENERATED by OloEngine/tests/scripts/generate_courtyard_scene.py — edit the
# generator and regenerate rather than hand-editing (byte-stable output).
Expand All @@ -44,9 +46,10 @@ PostProcessSettings:
VignetteSmoothness: 0.2
ChromaticAberrationEnabled: false
ChromaticAberrationIntensity: 0.5
# FXAA off: keep the benchmark frame AA-free. TAA is neither scene-serialized
# nor toggleable from a v1 capture manifest (RendererSettings allowlist), so
# the temporal axis here is the SSGI/SSR temporal resolves + realtime DDGI.
# FXAA off: no post-process AA. TAA is off in the scene too; the golden and
# diagnostic capture manifests turn it on (TAAEnabled), so only the hero frame
# is captured without anti-aliasing. The other temporal state is the SSGI/SSR
# resolves + realtime DDGI.
FXAAEnabled: false
DOFEnabled: false
DOFFocusDistance: 10
Expand Down
8 changes: 4 additions & 4 deletions OloEditor/SandboxProject/Assets/Scenes/ContactShadowTest.olo
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: ContactShadowTest.olo
Version: 1
RenderingPath: Deferred
# ─────────────────────────────────────────────────────────────────────────────
# Screen-Space Contact Shadows demo scene.
#
Expand All @@ -9,10 +10,9 @@ Version: 1
# pass: with it on, each object gets a crisp short shadow hugging its base (the
# grounding the coarse CSM misses), stretching away from the sun.
#
# IMPORTANT: Contact shadows are DEFERRED-ONLY. The render path lives in editor
# RendererSettings (not in this .olo), so after opening this scene:
# 1. Renderer Settings -> Active Path -> Deferred
# 2. Post Processing -> Screen-Space Contact Shadows -> Enable (already on below)
# IMPORTANT: Contact shadows are DEFERRED-ONLY. The scene file selects Deferred
# (RenderingPath below), so opening it switches the renderer; then:
# Post Processing -> Screen-Space Contact Shadows -> Enable (already on below)
# Toggle "Enable" off/on to compare, or "Debug View (shadow factor)" to see the
# raw per-pixel shadow factor in isolation. SSR/SSGI/SSAO/GTAO/Bloom are off so the
# only thing changing the floor is the contact-shadow darkening.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
Scene: DecalModeMatrixTest.olo
Version: 1
RenderingPath: Deferred
# Decal MODE MATRIX (issue #853).
#
# Four decals in a row on one flat, uniform ground plane — one per DecalMode —
# so each mode's channel routing is observable in isolation against a known
# neighbour. Run this scene with the renderer on the DEFERRED path
# (RendererSettings::Path lives on the renderer, not in the .olo — use
# olo_renderer_settings_set or the editor's renderer panel); on Forward /
# Forward+ every mode collapses to the transparent albedo overlay and the
# neighbour. The scene selects the DEFERRED path itself (RenderingPath below);
# on Forward / Forward+ every mode collapses to the transparent albedo overlay and the
# matrix is not exercised at all.
#
# What each mode owes, and what a leak looks like on THIS plane
Expand Down
6 changes: 3 additions & 3 deletions OloEditor/SandboxProject/Assets/Scenes/FSR2UpscaleTest.olo
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
Scene: FSR2UpscaleTest.olo
Version: 1
RenderingPath: Deferred
# FSR2 temporal upscaling (#684) — the scene this feature is verified in.
#
# Geometry and lighting are SponzaDeferred's, deliberately: dense thin geometry
# (the drapes, the railings, the pillar filigree) is what a temporal upscaler
# either reconstructs or smears, and it is already a scene people A/B against.
# What differs is only the PostProcessSettings block below.
#
# HOW TO USE IT. Open the scene, set the renderer to the DEFERRED path (the path
# lives on RendererSettings, not in the .olo — same caveat as SponzaDeferred),
# and then MOVE THE CAMERA. A still frame proves almost nothing here: ghosting,
# HOW TO USE IT. Open the scene (it selects the DEFERRED path itself, through
# RenderingPath below) and then MOVE THE CAMERA. A still frame proves almost nothing here: ghosting,
# disocclusion trails and a motion-vector sign error all look correct until
# something moves. Fly the camera along the nave, stop, and look at the trailing
# edges of the pillars.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: ForwardPlusStressTest.olo
Version: 1
RenderingPath: ForwardPlus
PostProcessSettings:
TonemapOperator: 0
Exposure: 1
Expand Down
1 change: 1 addition & 0 deletions OloEditor/SandboxProject/Assets/Scenes/ForwardPlusTest.olo
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: ForwardPlusTest.olo
Version: 1
RenderingPath: ForwardPlus
PostProcessSettings:
TonemapOperator: 0
Exposure: 1
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: ReflectionHierarchyTest.olo
Version: 1
RenderingPath: Deferred
# ─────────────────────────────────────────────────────────────────────────────
# Reflection-hierarchy demo scene — issue #1057, the contract is ADR 0020.
#
Expand Down Expand Up @@ -27,8 +28,7 @@ Version: 1
# out completely and renders identically with it on or off.
#
# HOW TO USE IT (the tier is Deferred + hardware-ray-tracing only):
# 1. Renderer Settings -> Active Path -> Deferred (the ONLY manual step: the
# render path lives in editor settings, not in the scene file)
# The scene file selects Deferred (RenderingPath below); no manual step.
# SSR and the ray-query tier are already enabled in PostProcessSettings below.
# Then "Tier Debug View" colours each pixel by which tier answered it:
# magenta = planar, green = SSR, orange = ray query, blue = probe/IBL.
Expand Down
8 changes: 4 additions & 4 deletions OloEditor/SandboxProject/Assets/Scenes/SSGITest.olo
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: SSGITest.olo
Version: 1
RenderingPath: Deferred
# ─────────────────────────────────────────────────────────────────────────────
# Screen-Space Global Illumination demo scene.
#
Expand All @@ -9,10 +10,9 @@ Version: 1
# and onto the wall-facing sides of the boxes — classic colour bleeding. Nothing
# here is emissive: the red comes purely from the lit wall, exactly like real GI.
#
# IMPORTANT: SSGI is DEFERRED-ONLY. The render path lives in editor RendererSettings
# (not in this .olo), so after opening this scene:
# 1. Renderer Settings -> Active Path -> Deferred
# 2. Post Processing -> Screen-Space Global Illumination -> Enable (already on below)
# IMPORTANT: SSGI is DEFERRED-ONLY. The scene file selects Deferred (RenderingPath
# below), so opening it switches the renderer; then:
# Post Processing -> Screen-Space Global Illumination -> Enable (already on below)
# Toggle "Enable" off/on to compare, or "Debug View (indirect only)" to see the
# raw bounced-light buffer in isolation. SSR/SSAO/GTAO/Bloom are off so the only
# thing changing the floor's colour is the SSGI bounce.
Expand Down
8 changes: 4 additions & 4 deletions OloEditor/SandboxProject/Assets/Scenes/SSRTest.olo
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: SSRTest.olo
Version: 1
RenderingPath: Deferred
# ─────────────────────────────────────────────────────────────────────────────
# Screen-Space Reflections demo scene.
#
Expand All @@ -8,10 +9,9 @@ Version: 1
# at its base and is easy to read. An equirect HDR drives IBL + skybox so metals
# have a base reflection; SSR adds the on-screen object reflections on top.
#
# IMPORTANT: SSR is DEFERRED-ONLY. The render path lives in editor RendererSettings
# (not in this .olo), so after opening this scene:
# 1. Renderer Settings -> Rendering Path -> Deferred
# 2. Post Processing -> Screen-Space Reflections -> Enable (already on below)
# IMPORTANT: SSR is DEFERRED-ONLY. The scene file selects Deferred (RenderingPath
# below), so opening it switches the renderer; then:
# Post Processing -> Screen-Space Reflections -> Enable (already on below)
# Toggle "Debug View" in that panel to see the raw reflection buffer in isolation.
# ─────────────────────────────────────────────────────────────────────────────
PostProcessSettings:
Expand Down
6 changes: 3 additions & 3 deletions OloEditor/SandboxProject/Assets/Scenes/SponzaDeferred.olo
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: SponzaDeferred.olo
Version: 1
RenderingPath: Deferred
# NOTE: SponzaDeferred.olo is the deferred-path companion to SponzaCSM.olo —
# similar geometry, but NOT byte-for-byte identical. Differences to keep in
# mind when A/B'ing the two:
Expand All @@ -8,9 +9,8 @@ Version: 1
# * Directional-light direction and intensity are tuned differently for the
# deferred path; IBL contribution is left at full strength here (SponzaCSM
# dims IBL to keep the sun dominant).
# The rendering path is set on the renderer (RendererSettings::Path /
# RenderingPath), not in the .olo file, so when running this scene make sure
# the editor is configured to Deferred. Phase 5 (deferred MSAA, decals,
# The scene file selects the Deferred path (RenderingPath below), so opening
# it switches the renderer. Phase 5 (deferred MSAA, decals,
# transparent OIT) is still WIP; use this scene to validate G-Buffer
# correctness and tiled deferred lighting once it lands.
PostProcessSettings:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: SponzaForwardPlus.olo
Version: 1
RenderingPath: ForwardPlus
PostProcessSettings:
TonemapOperator: 0
Exposure: 1
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: VirtualGeometryParallelRecording.olo
Version: 1
RenderingPath: Deferred
# ---------------------------------------------------------------------------
# VIRTUAL GEOMETRY x PARALLEL RECORDING (#1013)
#
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
Scene: VirtualGeometrySkinned.olo
Version: 1
RenderingPath: Deferred
# ─────────────────────────────────────────────────────────────────────────────
# Skinned virtualized geometry (issue #1150) — a rigged character drawn through
# the Nanite-style cluster LOD DAG.
#
# REQUIRES THE DEFERRED RENDERING PATH, like every virtual-geometry scene:
# VirtualGeometryPass self-disables on Forward / Forward+. On load:
# Renderer Settings -> Rendering Path -> Deferred. (The Virtual Mesh inspector
# shows a warning plus a one-click switch while the wrong path is active.)
# VirtualGeometryPass self-disables on Forward / Forward+. The scene file
# selects Deferred (RenderingPath below), so opening it switches the renderer.
# (The Virtual Mesh inspector shows a warning plus a one-click switch if the
# path is changed away afterwards.)
#
# PRESS PLAY.
#
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: VirtualGeometrySponza.olo
Version: 1
RenderingPath: Deferred
# ─────────────────────────────────────────────────────────────────────────────
# Nanite-style virtualized geometry on a real production asset (issue #629).
#
Expand All @@ -26,10 +27,9 @@ Version: 1
# REQUIRES THE DEFERRED RENDERING PATH. VirtualGeometryPass self-disables on
# Forward / Forward+ (the compute rasterizer writes a visibility buffer that the
# material-resolve pass reconstructs the G-Buffer from, and the forward paths have
# no G-Buffer to resolve into). The renderer starts on Forward and the path is not
# scene-serialized, so on load: Renderer Settings -> Rendering Path -> Deferred.
# The Virtual Mesh inspector shows a warning + a one-click switch while the wrong
# path is active.
# no G-Buffer to resolve into). The scene file selects Deferred (RenderingPath
# below), so opening it switches the renderer. The Virtual Mesh inspector shows a
# warning + a one-click switch if the path is changed away afterwards.
#
# NOTE: the first load cooks the DAG for all 25 submeshes and is slow. The cook is
# cached (.omesh) and shipped in the asset pack, so every later load is instant.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: VirtualGeometrySponzaControl.olo
Version: 1
RenderingPath: Deferred
# ─────────────────────────────────────────────────────────────────────────────
# Nanite-style virtualized geometry on a real production asset (issue #629).
#
Expand All @@ -26,10 +27,9 @@ Version: 1
# REQUIRES THE DEFERRED RENDERING PATH. VirtualGeometryPass self-disables on
# Forward / Forward+ (the compute rasterizer writes a visibility buffer that the
# material-resolve pass reconstructs the G-Buffer from, and the forward paths have
# no G-Buffer to resolve into). The renderer starts on Forward and the path is not
# scene-serialized, so on load: Renderer Settings -> Rendering Path -> Deferred.
# The Virtual Mesh inspector shows a warning + a one-click switch while the wrong
# path is active.
# no G-Buffer to resolve into). The scene file selects Deferred (RenderingPath
# below), so opening it switches the renderer. The Virtual Mesh inspector shows a
# warning + a one-click switch if the path is changed away afterwards.
#
# NOTE: the first load cooks the DAG for all 103 submeshes and is slow. The cook is
# cached (.omesh) and shipped in the asset pack, so every later load is instant.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: VirtualGeometryStress.olo
Version: 1
RenderingPath: Deferred
# ---------------------------------------------------------------------------
# THE NANITE STRESS SCENE (issue #629) - the "can it actually do the thing" scene.
#
Expand Down Expand Up @@ -53,9 +54,9 @@ Version: 1
# Credit: Stanford Computer Graphics Laboratory, 3D Scanning Repository.
#
# REQUIRES THE DEFERRED PATH. VirtualGeometryPass self-disables on Forward and
# Forward+. The renderer starts on Forward and the path is not scene-serialized,
# so on load: Renderer Settings -> Rendering Path -> Deferred. The Virtual Mesh
# inspector shows a warning and a one-click switch while the wrong path is active.
# Forward+. The scene file selects Deferred (RenderingPath below), so opening it
# switches the renderer. The Virtual Mesh inspector shows a warning and a
# one-click switch if the path is changed away afterwards.
#
# FIRST LOAD IS SLOW: cooking a cluster LOD DAG for 7.2M triangles takes a couple
# of minutes. The cook is cached (.omesh), so later loads are fast.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
Scene: VirtualGeometryTest.olo
Version: 1
RenderingPath: Deferred
# ─────────────────────────────────────────────────────────────────────────────
# Nanite-style virtualized geometry (issue #629).
#
# REQUIRES THE DEFERRED RENDERING PATH. VirtualGeometryPass self-disables on
# Forward / Forward+ (the compute software rasterizer writes a visibility buffer
# that the material-resolve pass reconstructs the G-Buffer from, and the forward
# paths have no G-Buffer to resolve into). The renderer starts on Forward and the
# path is not scene-serialized, so on load: Renderer Settings -> Rendering Path ->
# Deferred. The Virtual Mesh inspector shows a warning + a one-click switch button
# while the wrong path is active.
# paths have no G-Buffer to resolve into). The scene file selects Deferred
# (RenderingPath below), so opening it switches the renderer. The Virtual Mesh
# inspector shows a warning + a one-click switch button if the path is changed
# away afterwards.
#
# What the scene shows:
# * Front row (z = 3.5) — three helmets at the SAME distance with different
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: VirtualShadowMapLocalLights.olo
Version: 1
RenderingPath: Deferred
# ─────────────────────────────────────────────────────────────────────────────
# Virtual shadow pages for POINT and SPOT lights (issue #703).
#
Expand All @@ -11,8 +12,8 @@ Version: 1
# `AtlasCasterRecord::Allocated == false` and simply have no shadow.
#
# HOW TO USE IT:
# 1. Renderer Settings -> Active Path -> Deferred
# 2. Renderer Settings -> Shadows -> Virtual Shadow Maps -> Enable VSM
# (the scene file selects Deferred itself, through RenderingPath below)
# Renderer Settings -> Shadows -> Virtual Shadow Maps -> Enable VSM
# ("Local Lights (point / spot)" is on by default underneath it)
# Toggle VSM off and on and watch the props' shadows: with it OFF only the
# highest-scoring handful of lamps cast at all, and the rest light the props
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Scene: VirtualShadowMapTest.olo
Version: 1
RenderingPath: Deferred
# ─────────────────────────────────────────────────────────────────────────────
# Virtual Shadow Maps demo scene (issue #702).
#
Expand All @@ -8,8 +9,8 @@ Version: 1
# exactly the caster type VSM covers.
#
# HOW TO USE IT:
# 1. Renderer Settings -> Active Path -> Deferred
# 2. Renderer Settings -> Shadows -> Virtual Shadow Maps -> Enable VSM
# (the scene file selects Deferred itself, through RenderingPath below)
# Renderer Settings -> Shadows -> Virtual Shadow Maps -> Enable VSM
# Toggle it off/on: the floor shadows must stay in the SAME PLACE and get
# sharper near the camera. Watch "pages drawn / resident" underneath — with the
# camera held still it should settle to ~0 drawn, which is the entire point of
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,7 @@ Output:
Resolution: [1280, 720]
RenderScale: 1.0

# NOTE: TAA is not toggleable here (v1 RendererSettings allowlist) and not
# scene-serialized — see courtyard.golden.yaml.
# TAA is off in the scene; TAAEnabled below turns it on for the capture.
RendererSettings:
Path: Deferred
EnableDDGI: true
Expand Down
8 changes: 3 additions & 5 deletions OloEditor/assets/benchmark/manifests/courtyard.golden.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,9 @@ Output:
Resolution: [1280, 720]
RenderScale: 1.0

# NOTE: TAA is not toggleable here (v1 RendererSettings allowlist is Path /
# EnableDDGI / DepthPrepassEnabled / OcclusionCullingEnabled /
# HZBOcclusionCullingEnabled) and is not scene-serialized either — the
# Warmup.PerFeature TAA entry below documents the intended temporal budget;
# the live temporal state is the SSGI/SSR resolves + DDGI.
# TAA is off in the scene; TAAEnabled below turns it on for the capture, and
# the Warmup.PerFeature TAA entry below is its warm-up budget. The other live
# temporal state is the SSGI/SSR resolves + DDGI.
RendererSettings:
Path: Deferred
EnableDDGI: true
Expand Down
4 changes: 2 additions & 2 deletions OloEditor/assets/benchmark/manifests/courtyard.hero.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ Output:
Resolution: [3840, 2160]
RenderScale: 1.0

# NOTE: TAA is not toggleable here (v1 RendererSettings allowlist) and not
# scene-serialized — see courtyard.golden.yaml.
# TAA is off in the scene and this manifest does not set TAAEnabled, so the hero
# frame is captured without TAA (golden and diagnostic turn it on).
RendererSettings:
Path: Deferred
EnableDDGI: true
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading