diff options
Diffstat (limited to 'src/rendering/include/engine')
| -rw-r--r-- | src/rendering/include/engine/rendering/rendering.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/rendering/include/engine/rendering/rendering.h b/src/rendering/include/engine/rendering/rendering.h index d6311de..4babe6d 100644 --- a/src/rendering/include/engine/rendering/rendering.h +++ b/src/rendering/include/engine/rendering/rendering.h @@ -82,6 +82,28 @@ typedef struct { ShaderBuffer* buffer; } RenderObject; +typedef struct { + isize count; + // TODO: Add index buffer? + f32 *vertices; +} RenderModel; + +typedef struct { + // Size and count of models + isize msize; + isize mcount; + // Size and count of vertices + isize vsize; + isize vcount; + // Should we keep track of each added model? + // sort of like an array of pointers? + // then have a function to update each model? + RenderModel *models; + u32 vertexbuffer; + f32 *vertices; + // TODO: Add index buffer? +} RenderBatch; + typedef enum { Camera_Perspective, Camera_Orthogonal, @@ -134,6 +156,7 @@ typedef enum { RenderDrawCallType_Text, RenderDrawCallType_Sprite, RenderDrawCallType_Model, + RenderDrawCallType_Batch, } RenderDrawCallType; typedef struct { @@ -151,6 +174,10 @@ typedef struct { vec3 pos; f32 scale; } model; + struct { + RenderObject* model; + isize id; + } batch; } data; } RenderDrawCall; |
