📄 model.h
字号:
#ifndef MODEL_H#define MODEL_H#ifdef __cplusplusextern "C" {#endif#define MAX_VERTICES 30000#define MAX_FACES 20000#define MAX_NORMALS 30000#define MAX_MATERIALS 200#define BUF_SIZE 120#define NO_SDL_GLEXT#include "SDL_opengl.h"// #include <GL/gl.h>#include "Nebu_base.h"#include "Nebu_filesystem.h"typedef struct { float ambient[4]; float diffuse[4]; float specular[4]; float shininess; char *name; char *map_diffuse;} Material;typedef struct { vec3 vMin; vec3 vSize; float fRadius;} BoundingBox;typedef struct { GLfloat *pVertices; GLfloat *pNormals; GLshort **ppIndices; int nVertices, nNormals, nMaterials; Material* pMaterials; int *pnFaces; BoundingBox BBox;} Mesh;typedef enum { TRI_MESH, QUAD_MESH} MeshType; extern Mesh* readMeshFromFile(const char* filename, MeshType type);extern void drawModel(Mesh* pMesh, MeshType type);extern void drawModelExplosion(Mesh *pMesh, float fRadius);typedef enum { eAmbient = 0, eDiffuse, eSpecular} ColorType;extern void SetMaterialColor(Mesh *pMesh, char *name, ColorType eType, float pColor[4]);extern void computeBBox(Mesh* pMesh);extern int polycount;#ifdef __cplusplus}#endif /* __cplusplus */#endif /* MODEL_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -