Skip to content

gl: isolate compatibility-only helpers - #13

Closed
tritao wants to merge 3 commits into
stack/egl-offscreenfrom
stack/compatibility-guards
Closed

gl: isolate compatibility-only helpers#13
tritao wants to merge 3 commits into
stack/egl-offscreenfrom
stack/compatibility-guards

Conversation

@tritao

@tritao tritao commented Aug 7, 2026

Copy link
Copy Markdown
Collaborator

Summary

Separates compatibility-only OpenGL helpers from code that must also work with core contexts.

  • Gates fixed-function helpers behind compatibility support.
  • Isolates ancillary compatibility-only helpers.
  • Isolates display-list operations.
  • Prevents core configurations from requiring legacy entry points.

Stack

Layer 3/8, based on PR #12. This is a prerequisite for the profile-neutral shader and rendering layers.

@tritao tritao changed the title stack/compatibility guards gl: isolate compatibility-only helpers Aug 8, 2026
tritao added 3 commits August 8, 2026 01:16
…ilds

Shared rendering helpers still pulled fixed-function declarations into core-profile builds, coupling profile-neutral image, VBO, and shader support to the legacy renderer.

Guard compatibility-only operations in offscreen setup, image and vertex-array helpers, and shader utilities while leaving profile-neutral work available to both paths. The two renderer paths can therefore coexist until retained traversal is complete.
Material, texture-combine, and GLU helpers still pulled compatibility-only declarations into the core build after the main traversal paths were isolated.

Guard those ancillary helpers and keep protocol definitions available through the profile-neutral glue. This removes the remaining compile-time dependencies without changing legacy behavior.
Display-list allocation, compilation, and teardown are compatibility-profile operations, but the element must remain safe to reference while retained rendering is active.

Keep display-list lifetime management behind the compatibility boundary and preserve the logical element behavior for code that still traverses legacy nodes. Core-profile builds therefore retain the ABI without issuing display-list commands.
@tritao
tritao force-pushed the stack/compatibility-guards branch from 3a96552 to e3b2309 Compare August 8, 2026 00:17
@tritao
tritao force-pushed the stack/egl-offscreen branch from 4878add to e9df85a Compare August 8, 2026 00:17
@tritao

tritao commented Aug 8, 2026

Copy link
Copy Markdown
Collaborator Author

Superseded by the seven-layer stack. Its compatibility-only changes have been redistributed into the shader, shared-rendering, and compatibility-boundary PRs so each layer owns its final abstraction.

@tritao tritao closed this Aug 8, 2026
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