rendering: reuse retained geometry resources - #69
Conversation
|
Added stable scene-texture and explicit texture-coordinate source identity. On the accelerated Intel OpenGL runner, the 50k core forced rebuild improved from 1106.8 ms to 319.3 ms; backend resource preparation improved from 645.2 ms to 76.2 ms. Procedural texture-coordinate functions remain conservatively excluded. Full rebuild and all 37 tests pass. |
|
Added conservative PER_VERTEX color-source reuse with content-based color and opacity revision tracking. The 50k core forced rebuild improved from 319.3 ms to 233.0 ms; backend resource preparation improved from 76.2 ms to 4.3 ms. Packed-color and underspecified diffuse arrays remain excluded. Full rebuild and all 37 tests pass. |
|
Added retained construction attribution in c8ce046. 50k feature-rich forced rebuild (5 samples, local hardware):
This confirms geometry generation/packing is no longer the rebuild bottleneck. The next candidates are command/state capture and the residual traversal/state/orchestration cost. JSON schema is now version 6. Full local suite: 37/37 passed. |
c8ce046 to
410096e
Compare
410096e to
7d82a12
Compare
c1a3aa6 to
b0ba590
Compare
856b125 to
13983dc
Compare
13983dc to
1d6eaee
Compare
bbd9c33 to
6055e82
Compare
6055e82 to
f8c385f
Compare
f8c385f to
a1aecd7
Compare
a1aecd7 to
473c62f
Compare
ce1f2a8 to
caa4f33
Compare
caa4f33 to
641eeb6
Compare
641eeb6 to
2bacfd8
Compare
Builds on #68.
Purpose
Reusing an unchanged frame helps only while that exact draw list survives. A
rebuild could still repack identical geometry and make the OpenGL backend
recreate or revalidate resources for every repeated occurrence.
This PR gives geometry stable draw-list resource identity. Commands refer to
shared geometry resources, allowing repeated shapes and rebuilt frames to
reuse the same packed data and backend allocation when their source is still
valid.
What changed
resource rather than duplicate command-local ownership.
SoFaceSetemission to avoid unnecessary genericprimitive reconstruction.
across occurrences and rebuilt frames.
Safety and scope
Resource reuse is based on explicit source identity and revision. Cases whose
effective geometry cannot yet be proven stable continue through the existing
capture path. Broader textured and per-vertex-material source reuse remains
outside this layer.
Validation
geometry resources are shared.