Skip to content

rendering: separate retained render planning from execution - #61

Merged
tritao merged 0 commit into
stack/drawlist-gl-backendfrom
stack/drawlist-render-planner
Aug 18, 2026
Merged

rendering: separate retained render planning from execution#61
tritao merged 0 commit into
stack/drawlist-gl-backendfrom
stack/drawlist-render-planner

Conversation

@tritao

@tritao tritao commented Aug 17, 2026

Copy link
Copy Markdown
Collaborator

Purpose

Introduce the private render-plan boundary between retained semantic commands and backend execution ordering. This is implementation architecture only; it does not expand the public Coin API.

V1

  • Build an insertion-ordered SoRenderPlan from the retained SoDrawList.
  • Keep SoDrawList immutable during planning.
  • Require backend rendering to consume the resolved plan rather than rediscovering execution order.

The semantic IR and DrawList execution-order cleanup (pass, sortKey, and DrawList-owned sorted-order helpers) belongs to PR #28. This layer consumes that simpler insertion-ordered representation.

Deferred

Material/opacity semantics and transparency scheduling are layered in PR #49; additional stages, batching, OIT, and a public planner API remain future work.

@tritao
tritao force-pushed the stack/drawlist-render-planner branch 2 times, most recently from a68da5f to 84425ee Compare August 17, 2026 12:38
@tritao
tritao force-pushed the stack/drawlist-render-planner branch from 84425ee to 4603b2b Compare August 17, 2026 12:56
@tritao
tritao force-pushed the stack/drawlist-render-planner branch from 4603b2b to 9031ccd Compare August 17, 2026 13:39
@tritao
tritao force-pushed the stack/drawlist-render-planner branch from 9031ccd to 7c4726c Compare August 17, 2026 13:43
@tritao
tritao force-pushed the stack/drawlist-render-planner branch from 7c4726c to b1cb34b Compare August 17, 2026 13:54
@tritao
tritao force-pushed the stack/drawlist-render-planner branch from b1cb34b to c44c253 Compare August 17, 2026 14:09
@tritao
tritao force-pushed the stack/drawlist-render-planner branch 2 times, most recently from 00c6d49 to c5d706e Compare August 17, 2026 15:23
@tritao
tritao force-pushed the stack/drawlist-render-planner branch 2 times, most recently from 21fa9e0 to 39122ea Compare August 17, 2026 15:52
@tritao
tritao force-pushed the stack/drawlist-render-planner branch 2 times, most recently from a581b67 to 30b9c38 Compare August 17, 2026 16:20
@tritao
tritao force-pushed the stack/drawlist-render-planner branch from 30b9c38 to e4ae53a Compare August 17, 2026 17:11
@tritao
tritao force-pushed the stack/drawlist-render-planner branch 2 times, most recently from 42bcc26 to d564758 Compare August 17, 2026 22:14
@tritao
tritao changed the base branch from stack/drawlist-picking to stack/drawlist-gl-backend August 17, 2026 22:16
@tritao
tritao force-pushed the stack/drawlist-render-planner branch from d564758 to 2ab1374 Compare August 17, 2026 22:27
@tritao
tritao force-pushed the stack/drawlist-render-planner branch from 2ab1374 to 25fdcd2 Compare August 17, 2026 23:56
@tritao
tritao force-pushed the stack/drawlist-render-planner branch from 25fdcd2 to a08ef64 Compare August 18, 2026 00:18
@tritao
tritao force-pushed the stack/drawlist-render-planner branch 2 times, most recently from b3e9b37 to ac06097 Compare August 18, 2026 10:19
@tritao
tritao force-pushed the stack/drawlist-render-planner branch from ac06097 to 791fa23 Compare August 18, 2026 10:48
@tritao
tritao force-pushed the stack/drawlist-render-planner branch from 791fa23 to 8236572 Compare August 18, 2026 14:40
@tritao
tritao force-pushed the stack/drawlist-render-planner branch from 8236572 to 91874d0 Compare August 18, 2026 14:48
@tritao
tritao merged commit 91874d0 into freecad-master Aug 18, 2026
3 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant