Mesh_Renderer carries a colour and the mesh pipeline draws with depth #70

Closed
opened 2026-09-05 09:35:07 +00:00 by crowmaki · 0 comments
Owner

Parent

Part of #67.

What to build

A Mesh_Renderer can be coloured, and the mesh pipeline draws with a depth buffer. The Component gains a colour field defaulting to white, which the pipeline copies into the Push-Constant Prelude payload and the shader multiplies with the vertex colour and the Pass tint. The grid-offset logic leaves the shader. The mesh Pass gains a D32_Float Virtual Resource sized from the swapchain description, wired as a depth attachment cleared to 1.0, and the pipeline enables depth test and depth write. Headless runs the same declaration against configured defaults.

The existing sample keeps building and its surviving tests keep passing; its grid payload use goes because the grid itself goes in the sample rewrite.

Acceptance criteria

  • A Mesh_Renderer's colour appears in its Draw Record payload.
  • The mesh Pass has two attachments and the second is D32_Float; the pipeline has depth test and write enabled.
  • The windowed sample renders with correct occlusion; the headless sample and the core suite pass.
  • The regenerated Pass Interface is committed via just shaders.

Blocked by

  • None (can start immediately).
## Parent Part of #67. ## What to build A `Mesh_Renderer` can be coloured, and the mesh pipeline draws with a depth buffer. The Component gains a `colour` field defaulting to white, which the pipeline copies into the Push-Constant Prelude payload and the shader multiplies with the vertex colour and the Pass tint. The grid-offset logic leaves the shader. The mesh Pass gains a `D32_Float` Virtual Resource sized from the swapchain description, wired as a depth attachment cleared to 1.0, and the pipeline enables depth test and depth write. Headless runs the same declaration against configured defaults. The existing sample keeps building and its surviving tests keep passing; its grid payload use goes because the grid itself goes in the sample rewrite. ## Acceptance criteria - [ ] A `Mesh_Renderer`'s colour appears in its Draw Record payload. - [ ] The mesh Pass has two attachments and the second is `D32_Float`; the pipeline has depth test and write enabled. - [ ] The windowed sample renders with correct occlusion; the headless sample and the core suite pass. - [ ] The regenerated Pass Interface is committed via `just shaders`. ## Blocked by - None (can start immediately).
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
crowmaki/cinnabar#70
No description provided.