Skip to content

feat(rendering): add sky sphere background - #823

Merged
JeanPhilippeKernel merged 1 commit into
developfrom
feat/sky-sphere-background
Sep 16, 2026
Merged

JeanPhilippeKernel merged 1 commit into
developfrom
feat/sky-sphere-background

Conversation

@JeanPhilippeKernel

Copy link
Copy Markdown
Owner

Summary

Closes #803.
Part of #810.

  • Adds SkySpherePass, an HDR fullscreen background pass with horizon, zenith, and ground gradients.
  • Adds optional analytic sun-disc rendering driven by the explicitly selected primary directional light; the gradient remains valid when no light is selected or that actor is deleted.
  • Integrates SkySphere as a normal render-graph callback, depth-tested only on background pixels and compatible with standard and reverse-Z depth conventions.
  • Keeps SkySphere presentation-only: it immediately uses the permanent fallback IBL and never triggers HDRI decode, cubemap generation, or environment-lighting bakes.
  • Fixes projective Mat4::Inverse() so camera ray reconstruction works for sky rendering rather than only affine transforms.
  • Fixes cross-stage push-constant reflection to merge equal ranges instead of summing them, keeping the shared SkySphere range at the portable 80-byte size.
  • Documents the fallback-IBL and sun-disc contract, and clears a deleted selected light reference from the hierarchy path.

Validation

  • Built Obelisk and ZEngineTests on macOS Debug; new shaders compiled and were deployed with the editor.
  • Passed 72 focused matrix, SkySphere, SkyEnvironment, and render-graph tests.
  • Ran the repository pre-push clang-format gate successfully for engine, editor, and shader sources.
  • Manually validated SkySphere, the directional-light sun disc, removal of the selected light, and viewport output.

Follow-up

@JeanPhilippeKernel JeanPhilippeKernel added area-rendering area-linux Work on Linux system area-window Work on Window system area-macOS Work on macOS system labels Sep 15, 2026
@JeanPhilippeKernel JeanPhilippeKernel moved this to In Progress in ZEngine Board Sep 15, 2026
@JeanPhilippeKernel
JeanPhilippeKernel merged commit bb9df3f into develop Sep 16, 2026
17 checks passed
@JeanPhilippeKernel
JeanPhilippeKernel deleted the feat/sky-sphere-background branch September 16, 2026 00:01
@github-project-automation github-project-automation Bot moved this from In Progress to Done in ZEngine Board Sep 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-linux Work on Linux system area-macOS Work on macOS system area-rendering area-window Work on Window system

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

[Feature] Implement SkySphere background composition

1 participant