35 lines
735 B
C
35 lines
735 B
C
#ifndef __G_MODELS_H__
|
|
#define __G_MODELS_H__
|
|
|
|
#include <gear/base.h>
|
|
#include <gear/graphics/color.h>
|
|
#include <sokol/sokol_gfx.h>
|
|
|
|
typedef struct g_vertex {
|
|
float x, y, z;
|
|
g_color color;
|
|
int16_t u, v;
|
|
} g_vertex;
|
|
|
|
typedef u32 g_index;
|
|
|
|
typedef sl_vec(g_vertex) g_vertex_vec;
|
|
typedef sl_vec(g_index) g_index_vec;
|
|
|
|
typedef struct g_model {
|
|
g_vertex_vec vertices;
|
|
g_index_vec indices;
|
|
sg_buffer vertex_buffer;
|
|
sg_buffer index_buffer;
|
|
} g_model;
|
|
|
|
// src/graphics/models/create.c
|
|
g_model* g_model_create(g_vertex_vec* vertices, g_index_vec* indices);
|
|
|
|
// src/graphics/models/load.c
|
|
// g_model* g_model_load(const char* filename);
|
|
|
|
// src/graphics/models/destroy.c
|
|
void g_model_destroy(g_model* model);
|
|
|
|
#endif
|