1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#ifndef PRGE_MODEL_H
#define PRGE_MODEL_H
#define MAX_TEXTURE 5
Vertex vert_init(V3 pos, V2 texc);
Mesh *mesh_init(Arena *arena, V3 origin, V3 rotate, Vertex *verts, U32 nverts, U32 *indices, U32 nindices);
void mesh_add_texture(Mesh *mesh, Texture texture);
Mesh *mesh_gen_quad(Arena *arena, V3 origin, V3 rotate, F32 w, F32 h);
Mesh *mesh_gen_circle(Arena *arena, V3 origin, V3 rotate, F32 r, U32 nverts);
void mesh_draw(Mesh *mesh);
Model *model_init(Arena *arena, V3 origin, V3 rotate, Mesh *meshes, U32 nmeshes);
Model *model_load(Arena *arena, V3 origin, V3 rotate, Str8 filename);
void model_draw(U32 shader, MAT4 *proj, MAT4 *view, Model *model);
#endif /* PRGE_MODEL_H */
|