2026-07-10 02:27:47 +01:00
# EveUnity
EveUnity is the Unity lowering client for Eve interactive surfaces.
It owns Unity projection, scene lifecycle, input capture, camera behavior,
asset resolution hooks, UPM packaging, runtime tests, and frame evidence. It
does not own provider state, simulation, commands, receipts, assets, or plugin
semantics.
The first package is `org.gamecult.eve.unity-scene` . A generic Unity host can
2026-07-10 11:04:26 +01:00
discover a Verse from one CultMesh rendezvous endpoint, select an advertised
`interactive-world` surface, and connect through the EveUnity provider ports.
Aetheria's daemon-published 3D ARPG surface is the product witness; no Aetheria
assembly is part of the client.
2026-07-10 02:27:47 +01:00
2026-07-10 14:13:53 +01:00
`EveUnityCultMeshPlayableWorldProvider` is the shipped composition root. Its
provider, surface, and Verse filters default to empty, so a client can select by
2026-08-17 21:02:01 +02:00
the generic `interactive-world` contract alone. After selection, Unity retains
the rendezvous address, Verse ID, and stable provider identity only. `CultMeshClient` owns
physical route discovery, reconnection, typed live-resource leases, command
submission, and content/body sessions.
2026-07-10 14:13:53 +01:00
2026-07-10 02:27:47 +01:00
```powershell
powershell -ExecutionPolicy Bypass -File .\scripts\run-package-tests.ps1
powershell -ExecutionPolicy Bypass -File .\scripts\pack.ps1
2026-07-10 03:34:56 +01:00
powershell -ExecutionPolicy Bypass -File .\scripts\run-playmode-capture.ps1
2026-07-10 11:04:26 +01:00
powershell -ExecutionPolicy Bypass -File .\scripts\run-aetheria-daemon-world-witness.ps1
2026-07-10 02:27:47 +01:00
```
See [docs/authority-map.md ](docs/authority-map.md ) for the live boundary.
2026-07-10 03:34:56 +01:00
`TestProject` is the owner-controlled minimal Unity consumer. It depends on the
generated CultLib UPM package and Eve contracts directly, contains no Aetheria
assemblies, and produces the generic `eve.world-smoke` PlayMode PNG control.