Requirements¶
Requirements, specifications and tests are tracked with sphinx-needs. Each item has an ID, a status and links to the items it refines, implements or verifies.
Type |
Prefix |
Links |
|---|---|---|
Requirement |
|
|
Specification |
|
|
Test |
|
|
Statuses: draft, open, implemented, verified.
Note
This section is at an early stage. The items below are a starting set that shows the structure; they are not a complete specification of the engine.
Overview¶
ID |
Title |
Type |
Status |
Implements |
Verifies |
|---|---|---|---|---|---|
Multiple execution paths |
req |
implemented |
|||
Pre-recorded GPU work |
req |
implemented |
|||
Interchangeable splatting backends |
req |
implemented |
|||
Topological ordering with Kahn's algorithm |
spec |
implemented |
|||
Headless submit and wait |
test |
verified |
|||
Both backends agree on the raccoon scene |
test |
verified |
Compute graph¶
Running a compiled graph shall not record Vulkan command buffers; it shall only submit command buffers recorded at compile time. |
A compiled graph shall support a fixed number of execution paths, each with its own command buffers, so that several frames can be in flight at once. |
|
Compiles a render graph over several headless paths and submits each path
with |
Gaussian splatting¶
The compute and the raster Gaussian splatting backends shall take the same inputs, so that switching the backend does not change the surrounding graph. |
Renders the raccoon scene with both backends and compares the images. |