OpenGLEnumMapper Namespace
Definition
namespace helios::opengl::OpenGLEnumMapper { ... }
Functions Index
| GLenum | toOpenGL (const PrimitiveType primitiveType) noexcept |
|
Converts an engine primitive type to its OpenGL primitive enum. More... | |
| GLenum | toOpenGLBaseType (const VertexAttributeType attributeType) noexcept |
|
Converts an engine attribute type to OpenGL. More... | |
Functions
toOpenGL()
| noexcept |
Converts an engine primitive type to its OpenGL primitive enum.
- Parameters
-
primitiveType Engine primitive topology.
- Returns
Matching OpenGL topology enum, or GL_TRIANGLES as fallback.
Definition at line 24 of file OpenGLEnumMapper.ixx.
25 switch (primitiveType) {
26 case PrimitiveType::Points:
27 return GL_POINTS;
28 case PrimitiveType::Lines:
29 return GL_LINES;
30 case PrimitiveType::LineLoop:
31 return GL_LINE_LOOP;
32 case PrimitiveType::LineStrip:
33 return GL_LINE_STRIP;
34 case PrimitiveType::Triangles:
35 return GL_TRIANGLES;
36 case PrimitiveType::TriangleStrip:
37 return GL_TRIANGLE_STRIP;
38 case PrimitiveType::TriangleFan:
39 return GL_TRIANGLE_FAN;
40 default:
41 return GL_TRIANGLES;
42 }
43 }
toOpenGLBaseType()
| noexcept |
Converts an engine attribute type to OpenGL.
- Parameters
-
attributeType Engine attribute type.
- Returns
Matching OpenGL attribute type enum.
Definition at line 51 of file OpenGLEnumMapper.ixx.
51 [[nodiscard]] GLenum toOpenGLBaseType(const VertexAttributeType attributeType) noexcept {
52 switch (attributeType) {
53 case VertexAttributeType::Float:
54 case VertexAttributeType::Vec3f:
55 case VertexAttributeType::Vec4f:
56 case VertexAttributeType::Mat4f:
57 return GL_FLOAT;
58 default:
59 std::unreachable();
60 }
61 }
The documentation for this namespace was generated from the following file:
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.