Map renderer primitive topologies to OpenGL
This commit is contained in:
@@ -22,6 +22,7 @@ constexpr std::uint32_t gl_false = 0U;
|
||||
constexpr std::uint32_t gl_points = 0x0000U;
|
||||
constexpr std::uint32_t gl_lines = 0x0001U;
|
||||
constexpr std::uint32_t gl_triangles = 0x0004U;
|
||||
constexpr std::uint32_t gl_triangle_strip = 0x0005U;
|
||||
constexpr std::uint32_t gl_fragment_shader = 0x8B30U;
|
||||
constexpr std::uint32_t gl_vertex_shader = 0x8B31U;
|
||||
constexpr std::uint32_t gl_compile_status = 0x8B81U;
|
||||
@@ -459,6 +460,20 @@ std::uint32_t framebuffer_blit_filter(bool linear) noexcept
|
||||
return linear ? gl_linear : gl_nearest;
|
||||
}
|
||||
|
||||
std::uint32_t primitive_mode_for_renderer_topology(pp::renderer::PrimitiveTopology topology) noexcept
|
||||
{
|
||||
switch (topology) {
|
||||
case pp::renderer::PrimitiveTopology::triangles:
|
||||
return gl_triangles;
|
||||
case pp::renderer::PrimitiveTopology::triangle_strip:
|
||||
return gl_triangle_strip;
|
||||
case pp::renderer::PrimitiveTopology::lines:
|
||||
return gl_lines;
|
||||
default:
|
||||
return 0U;
|
||||
}
|
||||
}
|
||||
|
||||
std::uint32_t index_type_for_index_size(std::uint32_t index_size_bytes) noexcept
|
||||
{
|
||||
switch (index_size_bytes) {
|
||||
|
||||
Reference in New Issue
Block a user