22 #ifndef GRIM_MODELEMI_H 23 #define GRIM_MODELEMI_H 25 #include "engines/grim/object.h" 26 #include "engines/grim/actor.h" 28 #include "math/matrix4.h" 29 #include "math/vector2d.h" 30 #include "math/vector3d.h" 31 #include "math/vector4d.h" 32 #include "math/aabb.h" 35 class SeekableReadStream;
43 unsigned char r, g, b, a;
68 kAlphaBlend = 0x10000,
69 kUnknownBlend = 0x40000
72 EMIMeshFace() : _faceLength(0), _numFaces(0), _hasTexture(0), _texID(0), _flags(0), _indexes(NULL), _parent(NULL), _indicesEBO(0) { }
75 void setParent(
EMIModel *m) { _parent = m; }
90 Actor::AlphaMode _meshAlphaMode;
93 Math::Vector3d *_vertices;
94 Math::Vector3d *_drawVertices;
95 Math::Vector3d *_normals;
96 Math::Vector3d *_drawNormals;
97 Math::Vector3d *_lighting;
99 Math::Vector2d *_texVerts;
114 BoneInfo *_boneInfos;
116 int *_vertexBoneInfo;
120 Math::Vector3d *_center;
121 Math::Vector3d *_boxData;
122 Math::Vector3d *_boxData2;
135 void setTex(uint32 index);
138 void prepareForRender();
139 void prepareTextures();
141 void updateLighting(
const Math::Matrix4 &modelToWorld);
142 void getBoundingBox(
int *x1,
int *y1,
int *x2,
int *y2)
const;
143 Math::AABB calculateWorldBounds(
const Math::Matrix4 &matrix)
const;
Definition: modelemi.h:82
Definition: animationemi.h:46
Definition: material.h:63
Definition: skeleton.h:68
Definition: algorithm.h:29
Definition: modelemi.h:55
Definition: costumeemi.h:40
Definition: modelemi.h:42