28 #ifndef HPL_SUB_MESH_ENTITY_H 29 #define HPL_SUB_MESH_ENTITY_H 31 #include "common/array.h" 32 #include "hpl1/engine/graphics/GraphicsTypes.h" 33 #include "hpl1/engine/graphics/Renderable.h" 34 #include "hpl1/engine/math/MathTypes.h" 35 #include "hpl1/engine/math/MeshTypes.h" 36 #include "hpl1/engine/scene/Entity3D.h" 37 #include "hpl1/engine/scene/SectorVisibility.h" 38 #include "hpl1/engine/system/SystemTypes.h" 39 #include "common/stablemap.h" 40 #include "common/multimap.h" 44 class cMaterialManager;
49 class cAnimationState;
75 void OnTransformUpdate(
iEntity3D *apEntity);
90 int GetSaveCreatePrio() {
return 0; }
109 void SetCastsShadows(
bool abX) { mbCastShadows = abX; }
110 bool IsShadowCaster() {
return mbCastShadows; }
116 int GetMatrixUpdateCount();
118 eRenderableType GetRenderType() {
return eRenderableType_Normal; }
120 cSubMesh *GetSubMesh()
const {
return mpSubMesh; }
122 void SetLocalNode(
cNode3D *apNode);
128 tString GetEntityType() {
return "SubMesh"; }
129 bool IsVisible() {
return IsRendered(); }
130 void SetVisible(
bool abVisible) { SetRendered(abVisible); }
132 void UpdateLogic(
float afTimeStep);
135 int GetTriangleNum();
141 void SetUpdateBody(
bool abX);
142 bool GetUpdateBody();
144 void SetCustomMaterial(
iMaterial *apMaterial,
bool abDestroyOldCustom =
true);
145 iMaterial *GetCustomMaterial() {
return mpMaterial; }
147 cSector *GetCurrentSector()
const;
151 virtual void SaveToSaveData(
iSaveData *apSaveData);
152 virtual void LoadFromSaveData(
iSaveData *apSaveData);
172 bool mbGraphicsUpdated;
181 typedef tSubMeshEntityMap::iterator tSubMeshEntityMapIt;
185 #endif // HPL_SUB_MESH_ENTITY_H Definition: PortalContainer.h:181
Definition: SubMeshEntity.h:95
Definition: VertexBuffer.h:90
Definition: MaterialManager.h:41
T * iterator
Definition: array.h:54
typename TreeT::BasicIterator iterator
Definition: stablemap.h:48
Definition: BoundingVolume.h:71
Definition: SaveGame.h:130
Definition: Renderable.h:70
Definition: PhysicsBody.h:117
Definition: MeshTypes.h:38
Definition: SaveGame.h:111
Definition: SubMeshEntity.h:73
Definition: RenderList.h:145
Definition: Entity3D.h:81
Definition: MeshEntity.h:96
Definition: Material.h:203
Definition: Entity3D.h:44
Definition: SaveGame.h:183
Definition: Camera3D.h:53