From 19a5fae08d7f1f85cb5448a5f2b19f0f9d342a0e Mon Sep 17 00:00:00 2001 From: omniscient <17525998+omnisci3nce@users.noreply.github.com> Date: Sat, 8 Jun 2024 14:42:04 +1000 Subject: some more opengl work --- src/renderer/backends/opengl/opengl_helpers.h | 35 +++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'src/renderer/backends/opengl/opengl_helpers.h') diff --git a/src/renderer/backends/opengl/opengl_helpers.h b/src/renderer/backends/opengl/opengl_helpers.h index 6f70f09..2f6bef3 100644 --- a/src/renderer/backends/opengl/opengl_helpers.h +++ b/src/renderer/backends/opengl/opengl_helpers.h @@ -1 +1,36 @@ #pragma once +#include "ral_types.h" +#include +#include +typedef struct opengl_vertex_attr { + u32 count; + GLenum data_type; +} opengl_vertex_attr ; +opengl_vertex_attr format_from_vertex_attr(vertex_attrib_type attr) { + switch (attr) { + case ATTR_F32: + return (opengl_vertex_attr){.count = 1, .data_type = GL_FLOAT }; + case ATTR_U32: + return (opengl_vertex_attr){.count = 1, .data_type = GL_UNSIGNED_INT }; + case ATTR_I32: + return (opengl_vertex_attr){.count = 1, .data_type = GL_INT }; + case ATTR_F32x2: + return (opengl_vertex_attr){.count = 2, .data_type = GL_FLOAT }; + case ATTR_U32x2: + // return VK_FORMAT_R32G32_UINT; + case ATTR_I32x2: + // return VK_FORMAT_R32G32_UINT; + case ATTR_F32x3: + return (opengl_vertex_attr){.count = 3, .data_type = GL_FLOAT }; + case ATTR_U32x3: + // return VK_FORMAT_R32G32B32_UINT; + case ATTR_I32x3: + // return VK_FORMAT_R32G32B32_SINT; + case ATTR_F32x4: + return (opengl_vertex_attr){.count = 4, .data_type = GL_FLOAT }; + case ATTR_U32x4: + // return VK_FORMAT_R32G32B32A32_UINT; + case ATTR_I32x4: + // return VK_FORMAT_R32G32B32A32_SINT; + } +} \ No newline at end of file -- cgit v1.2.3-70-g09d2