Skip to content

Port webgpu_app to render graph#251

Draft
MatzeOGH wants to merge 2 commits into
AlpineMapsOrg:mainfrom
MatzeOGH:feature/rendergraph-app
Draft

Port webgpu_app to render graph#251
MatzeOGH wants to merge 2 commits into
AlpineMapsOrg:mainfrom
MatzeOGH:feature/rendergraph-app

Conversation

@MatzeOGH

@MatzeOGH MatzeOGH commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

Ports the webgpu app onto the render graph added in #250. The frame is now
built by declaring resources and passes each frame instead of the previous hand-ordered
rendering.

Merge #250 first.

Changes

  • webgpu/engine/Window builds the graph each frame and drives execute().
  • The renderers and overlays declare their passes and resources through the graph:
    atmosphere, clouds, track, and the height-lines, screen-space-snow, texture, and
    tile-debug overlays, plus OverlayRenderer and the shared Overlay interface.
  • RenderGraphPanel is a debug UI panel for inspecting the compiled graph (passes,
    resources, ordering, culling), plumbed in through ImGuiManager and RenderingContext.
  • App.cpp and apps/webgpu_app/CMakeLists.txt register the panel.
  • Small additions to webgpu/base/gpu_utils used by the integration.

Files

  • App: App.cpp, ImGuiManager.{h,cpp}, RenderingContext.{h,cpp},
    ui/RenderGraphPanel.{h,cpp}, CMakeLists.txt
  • Engine: Window.{h,cpp}, the atmosphere/cloud/track renderers, the overlays and
    OverlayRenderer, webgpu/base/gpu_utils.{h,cpp}

@MatzeOGH MatzeOGH changed the title Feature/rendergraph app Port webgpu_app to render graph Jul 19, 2026
@MatzeOGH
MatzeOGH force-pushed the feature/rendergraph-app branch from 487d552 to e341435 Compare July 20, 2026 07:11
@adam-ce

adam-ce commented Jul 20, 2026

Copy link
Copy Markdown
Member

Failing pipeline are unrelated unit tests. Review will be for Gerald :)

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.

2 participants