Map render pass clear values to OpenGL

This commit is contained in:
2026-06-02 20:35:28 +02:00
parent c18297f221
commit cc33fbdde2
5 changed files with 68 additions and 2 deletions

View File

@@ -310,6 +310,49 @@ void maps_render_pass_clear_masks(pp::tests::Harness& h)
PP_EXPECT(h, all_buffers == 0x00004500U);
}
void maps_render_pass_clear_values(pp::tests::Harness& h)
{
const auto values = pp::renderer::gl::clear_values_for_render_pass(pp::renderer::RenderPassDesc {
.clear_color_enabled = true,
.clear_color = {
.r = 0.125F,
.g = 0.25F,
.b = 0.5F,
.a = 1.0F,
},
.clear_depth_enabled = true,
.clear_depth = 0.625F,
.clear_stencil_enabled = true,
.clear_stencil = 7U,
});
const auto disabled_values = pp::renderer::gl::clear_values_for_render_pass(pp::renderer::RenderPassDesc {
.clear_color_enabled = false,
.clear_color = {
.r = 1.0F,
.g = 0.75F,
.b = 0.5F,
.a = 0.25F,
},
.clear_depth_enabled = false,
.clear_depth = 0.125F,
.clear_stencil_enabled = false,
.clear_stencil = 13U,
});
PP_EXPECT(h, values.color[0] == 0.125F);
PP_EXPECT(h, values.color[1] == 0.25F);
PP_EXPECT(h, values.color[2] == 0.5F);
PP_EXPECT(h, values.color[3] == 1.0F);
PP_EXPECT(h, values.depth == 0.625F);
PP_EXPECT(h, values.stencil == 7U);
PP_EXPECT(h, disabled_values.color[0] == 1.0F);
PP_EXPECT(h, disabled_values.color[1] == 0.75F);
PP_EXPECT(h, disabled_values.color[2] == 0.5F);
PP_EXPECT(h, disabled_values.color[3] == 0.25F);
PP_EXPECT(h, disabled_values.depth == 0.125F);
PP_EXPECT(h, disabled_values.stencil == 13U);
}
void maps_renderer_primitive_topologies_to_draw_modes(pp::tests::Harness& h)
{
PP_EXPECT(h, pp::renderer::gl::primitive_mode_for_renderer_topology(
@@ -963,6 +1006,7 @@ int main()
harness.run("maps_framebuffer_render_target_parameters", maps_framebuffer_render_target_parameters);
harness.run("maps_framebuffer_blit_parameters", maps_framebuffer_blit_parameters);
harness.run("maps_render_pass_clear_masks", maps_render_pass_clear_masks);
harness.run("maps_render_pass_clear_values", maps_render_pass_clear_values);
harness.run("maps_renderer_primitive_topologies_to_draw_modes", maps_renderer_primitive_topologies_to_draw_modes);
harness.run("maps_shape_index_and_primitive_modes", maps_shape_index_and_primitive_modes);
harness.run("maps_panopainter_cube_faces_to_texture_targets", maps_panopainter_cube_faces_to_texture_targets);