A 3d fps game made in OpenGL
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Symmetry/src/model.h

32 lines
1005 B

#ifndef MODEL_H
#define MODEL_H
#include "linmath.h"
#include "geometry.h"
struct Camera;
struct Material_Param;
struct Model
{
int node;
int geometry_index;
int material;
struct Material_Param* material_params;
};
struct Model* model_get(int index);
struct Model* model_get_all(void);
void model_init(void);
int model_create(int node, const char* geo_name, const char* material_name);
void model_remove(int index);
void model_cleanup(void);
void model_render_all(struct Camera* camera, enum Geometry_Draw_Mode draw_mode);
int model_set_material_param(struct Model* model, const char* name, void* value);
int model_get_material_param(struct Model* model, const char* name, void* value_out);
void model_render_all_debug(struct Camera* camera,
int debug_shader,
enum Geometry_Draw_Mode draw_mode,
const vec4* debug_color);
#endif