27 lines
1.1 KiB
Markdown
27 lines
1.1 KiB
Markdown
# ADR-0007: Safe SDL/OpenGL Boundary
|
|
|
|
Status: provisional
|
|
|
|
Workspace-owned code forbids `unsafe`. SDL/OpenGL adapters must use maintained
|
|
external crates behind a safe project API; local Objective-C/CGL/SDL/OpenGL FFI
|
|
inside FParkan is not an acceptable implementation strategy.
|
|
|
|
The current adapter crates are safe boundary stubs. They compile the intended
|
|
ports and deterministic command contracts, but they do not create SDL windows,
|
|
GL contexts, GPU resources, shaders, draw calls, swapchains, or presents. They
|
|
must not be treated as backend readiness evidence.
|
|
|
|
To close the macOS backend requirement, choose and vendor/lock a maintained
|
|
safe facade stack, then implement:
|
|
|
|
- SDL event source, window creation, GL context lifecycle, drawable size and
|
|
present;
|
|
- GL shader compile/link, buffer/texture upload, render state, draw calls and
|
|
diagnostics;
|
|
- game/viewer composition roots using those adapters;
|
|
- hidden-window/offscreen macOS smoke tests and licensed local model/terrain
|
|
frame captures.
|
|
|
|
Until those are implemented, Desktop GL evidence may document external probes
|
|
only; it does not satisfy the permanent adapter requirement.
|