28 #ifndef WINTERMUTE_XFRAME_NODE_H 29 #define WINTERMUTE_XFRAME_NODE_H 31 #include "engines/wintermute/base/base_named_object.h" 32 #include "engines/wintermute/base/gfx/xmesh.h" 33 #include "engines/wintermute/base/gfx/xmodel.h" 34 #include "engines/wintermute/coll_templ.h" 36 #include "math/matrix4.h" 37 #include "math/quat.h" 38 #include "math/vector3d.h" 51 bool updateMatrices(Math::Matrix4 &parentMat);
54 bool render(
XModel *model);
55 bool renderFlatShadowModel();
56 bool updateShadowVol(
ShadowVolume *shadow, Math::Matrix4 &modelMat,
const Math::Vector3d &light,
float extrusionDepth);
61 FrameNode *findFrame(
const char *frameName);
62 Math::Matrix4 *getCombinedMatrix();
63 Math::Matrix4 *getOriginalMatrix();
64 void setTransformationMatrix(Math::Matrix4 *mat);
65 bool pickPoly(Math::Vector3d *pickRayOrig, Math::Vector3d *pickRayDir);
66 bool getBoundingBox(Math::Vector3d *boxStart, Math::Vector3d *boxEnd);
68 void setTransformation(
int slot, Math::Vector3d pos, Math::Vector3d
scale, Math::Quaternion rot,
float lerpValue);
72 bool setMaterialSprite(
char *matName,
BaseSprite *sprite);
75 bool invalidateDeviceObjects();
76 bool restoreDeviceObjects();
82 Math::Matrix4 _transformationMatrix;
83 Math::Matrix4 _originalMatrix;
84 Math::Matrix4 _combinedMatrix;
86 Math::Vector3d _transPos[2];
87 Math::Vector3d _transScale[2];
88 Math::Quaternion _transRot[2];
Definition: base_game.h:75
Definition: video_theora_player.h:41
Graphics::Surface * scale(const Graphics::Surface &srcImage, int xSize, int ySize)
Definition: 3dshadow_volume.h:48
Definition: coll_templ.h:63
Definition: base_named_object.h:36
Definition: xframe_node.h:46
Definition: base_sprite.h:40
Definition: xfile_loader.h:452
Definition: achievements_tables.h:27