From 19609446908243fd28a3172b2fb5cd3c325a6a45 Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Wed, 15 Jul 2026 05:13:39 +0100 Subject: [PATCH] Complete planar camera lens ownership --- docs/world-state-lowering.md | 8 ++++++++ .../gamecult.eve.unity_scene_projection.v1.schema.json | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/docs/world-state-lowering.md b/docs/world-state-lowering.md index adfe8f3..0bcb001 100644 --- a/docs/world-state-lowering.md +++ b/docs/world-state-lowering.md @@ -97,6 +97,9 @@ state: define the provider-owned lens and composition. Screen coordinates are normalized viewport coordinates with a bottom-left origin; damping uses the exponential response `1-exp(-damping*deltaTime)`; +- `cameraNearClipPlane` and `cameraFarClipPlane` complete the perspective lens + contract. A lowerer must not substitute engine defaults that cull advertised + world content; - `ambientLightColor` and `ambientLightIntensity` define portable flat ambient illumination when the selected camera rig supports it; - `subjectVisible` controls presentation of `playerEntityId` without deleting @@ -111,6 +114,11 @@ another domain rule. A lowerer must not import the provider's private document types to reconstruct them, and it must not treat hiding or camera retargeting as removal of the underlying entity. +A Unity scene has one active world environment owner. A lowerer that mutates +scene-global render settings must restore the previous environment when its +world disconnects, its rig changes, or the lowering component is disabled or +destroyed. + The descriptor carries buffer locations, semantic columns, dirty ranges, and render groups. CultMesh selects the buffer route: shared memory for co-located runtimes, a native stream for remote runtimes, or another advertised backend. diff --git a/schemas/gamecult.eve.unity_scene_projection.v1.schema.json b/schemas/gamecult.eve.unity_scene_projection.v1.schema.json index 4ac688e..6e41fca 100644 --- a/schemas/gamecult.eve.unity_scene_projection.v1.schema.json +++ b/schemas/gamecult.eve.unity_scene_projection.v1.schema.json @@ -195,6 +195,14 @@ "type": "number", "minimum": 0 }, + "cameraNearClipPlane": { + "type": "number", + "exclusiveMinimum": 0 + }, + "cameraFarClipPlane": { + "type": "number", + "exclusiveMinimum": 0 + }, "ambientLightColor": { "type": "array", "minItems": 3,