fix(sky): preserve dark model lighting and address review

Merge origin/main and retain both format-scope additions.
Give StarrySky a separate black environment cube map and release it on destroy.
Guard anime updates when StarrySky is absent, require a visible Normal sky
before anime QA, and compare a lit airplane against black and white controls.
Document the sky background contract and its verification.

Co-Authored-By: GPT-6 (Codex) <[email protected]>
This commit is contained in:
German KhokhlovandGPT-6 committed 2026-10-21 14:21:14 +04:00
commit 27d4c0ba9c
228 files changed
+26920 -17345

No files matched your search

+4 -1
View File
@@ -114,7 +114,10 @@ export class VisualEffects {
stage.enabled = value > 0.001;
// Anime's bands turn the faint Milky Way into blotches, and depth cannot
// tell the sky from far geometry, so the glow fades with the style.
if (stage === this.stages.anime)
if (
stage === this.stages.anime &&
this.viewer.scene.skyBox?.milkyWayVisibility !== undefined
)
this.viewer.scene.skyBox.milkyWayVisibility = 1 - value;
if (stage.enabled && stage.uniforms.time !== undefined)
this.startAnimationLoop();