Skip to content

Feat: OpenGL Backend#180

Draft
brenocq wants to merge 17 commits intomainfrom
feat/opengl-backend
Draft

Feat: OpenGL Backend#180
brenocq wants to merge 17 commits intomainfrom
feat/opengl-backend

Conversation

@brenocq
Copy link
Copy Markdown
Owner

@brenocq brenocq commented Mar 7, 2026

Closes #172

This PR proposes the introduction of a Backend System for ImPlot3D. Currently, depth sorting is performed on the CPU at a per-triangle level (Z-sorting), which is computationally expensive for large datasets and fails to resolve visual artifacts when triangles intersect or overlap complexly. By supporting a dedicated OpenGL Backend, ImPlot3D can leverage the GPU's hardware depth buffer (Z-buffer) for per-pixel depth testing, ensuring perfect intersections and significantly higher performance. When no backend is initialized, ImPlot3D should fall back to CPU Z-sorting.

It is important that if the OpenGL backend is not set, ImPlot3D should fallback to rendering lines/triangles/marker just like before using the ImGui's draw list.

@brenocq brenocq self-assigned this Mar 7, 2026
@brenocq brenocq added type:feat New feature or request prio:high High priority status:doing Work is currently in progress labels Mar 7, 2026
@brenocq brenocq linked an issue Mar 7, 2026 that may be closed by this pull request
12 tasks
@github-actions github-actions bot added status:review The task is under review and removed status:doing Work is currently in progress labels Mar 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

prio:high High priority status:review The task is under review type:feat New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature] OpenGL Backend

1 participant