From 7028cbe09c688437910a25623098762bf0fa592d Mon Sep 17 00:00:00 2001 From: David Walter Seikel Date: Mon, 28 Mar 2016 22:28:34 +1000 Subject: Move Irrlicht to src/others. --- .../doc/html/_s_animated_mesh_8h_source.html | 278 +++++++++++++++++++++ 1 file changed, 278 insertions(+) create mode 100644 src/others/irrlicht-1.8.1/doc/html/_s_animated_mesh_8h_source.html (limited to 'src/others/irrlicht-1.8.1/doc/html/_s_animated_mesh_8h_source.html') diff --git a/src/others/irrlicht-1.8.1/doc/html/_s_animated_mesh_8h_source.html b/src/others/irrlicht-1.8.1/doc/html/_s_animated_mesh_8h_source.html new file mode 100644 index 0000000..f6d73e7 --- /dev/null +++ b/src/others/irrlicht-1.8.1/doc/html/_s_animated_mesh_8h_source.html @@ -0,0 +1,278 @@ + + + + +Irrlicht 3D Engine: SAnimatedMesh.h Source File + + + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + + + + + +
+
Irrlicht 3D Engine + +
+ +
+ + + + + + +
+
+
+ + + + +
+
+ +
+
+
+ +
+
+
+
SAnimatedMesh.h
+
+
+Go to the documentation of this file.
00001 // Copyright (C) 2002-2012 Nikolaus Gebhardt
+00002 // This file is part of the "Irrlicht Engine".
+00003 // For conditions of distribution and use, see copyright notice in irrlicht.h
+00004 
+00005 #ifndef __S_ANIMATED_MESH_H_INCLUDED__
+00006 #define __S_ANIMATED_MESH_H_INCLUDED__
+00007 
+00008 #include "IAnimatedMesh.h"
+00009 #include "IMesh.h"
+00010 #include "aabbox3d.h"
+00011 #include "irrArray.h"
+00012 
+00013 namespace irr
+00014 {
+00015 namespace scene
+00016 {
+00017 
+00019     struct SAnimatedMesh : public IAnimatedMesh
+00020     {
+00022         SAnimatedMesh(scene::IMesh* mesh=0, scene::E_ANIMATED_MESH_TYPE type=scene::EAMT_UNKNOWN) : IAnimatedMesh(), FramesPerSecond(25.f), Type(type)
+00023         {
+00024             #ifdef _DEBUG
+00025             setDebugName("SAnimatedMesh");
+00026             #endif
+00027             addMesh(mesh);
+00028             recalculateBoundingBox();
+00029         }
+00030 
+00032         virtual ~SAnimatedMesh()
+00033         {
+00034             // drop meshes
+00035             for (u32 i=0; i<Meshes.size(); ++i)
+00036                 Meshes[i]->drop();
+00037         }
+00038 
+00040 
+00041         virtual u32 getFrameCount() const
+00042         {
+00043             return Meshes.size();
+00044         }
+00045 
+00047 
+00048         virtual f32 getAnimationSpeed() const
+00049         {
+00050             return FramesPerSecond;
+00051         }
+00052 
+00054 
+00056         virtual void setAnimationSpeed(f32 fps)
+00057         {
+00058             FramesPerSecond=fps;
+00059         }
+00060 
+00062 
+00069         virtual IMesh* getMesh(s32 frame, s32 detailLevel=255, s32 startFrameLoop=-1, s32 endFrameLoop=-1)
+00070         {
+00071             if (Meshes.empty())
+00072                 return 0;
+00073 
+00074             return Meshes[frame];
+00075         }
+00076 
+00078         void addMesh(IMesh* mesh)
+00079         {
+00080             if (mesh)
+00081             {
+00082                 mesh->grab();
+00083                 Meshes.push_back(mesh);
+00084             }
+00085         }
+00086 
+00088 
+00089         virtual const core::aabbox3d<f32>& getBoundingBox() const
+00090         {
+00091             return Box;
+00092         }
+00093 
+00095         virtual void setBoundingBox(const core::aabbox3df& box)
+00096         {
+00097             Box = box;
+00098         }
+00099 
+00101         void recalculateBoundingBox()
+00102         {
+00103             Box.reset(0,0,0);
+00104 
+00105             if (Meshes.empty())
+00106                 return;
+00107 
+00108             Box = Meshes[0]->getBoundingBox();
+00109 
+00110             for (u32 i=1; i<Meshes.size(); ++i)
+00111                 Box.addInternalBox(Meshes[i]->getBoundingBox());
+00112         }
+00113 
+00115         virtual E_ANIMATED_MESH_TYPE getMeshType() const
+00116         {
+00117             return Type;
+00118         }
+00119 
+00121         virtual u32 getMeshBufferCount() const
+00122         {
+00123             if (Meshes.empty())
+00124                 return 0;
+00125 
+00126             return Meshes[0]->getMeshBufferCount();
+00127         }
+00128 
+00130         virtual IMeshBuffer* getMeshBuffer(u32 nr) const
+00131         {
+00132             if (Meshes.empty())
+00133                 return 0;
+00134 
+00135             return Meshes[0]->getMeshBuffer(nr);
+00136         }
+00137 
+00139 
+00142         virtual IMeshBuffer* getMeshBuffer( const video::SMaterial &material) const
+00143         {
+00144             if (Meshes.empty())
+00145                 return 0;
+00146 
+00147             return Meshes[0]->getMeshBuffer(material);
+00148         }
+00149 
+00151         virtual void setMaterialFlag(video::E_MATERIAL_FLAG flag, bool newvalue)
+00152         {
+00153             for (u32 i=0; i<Meshes.size(); ++i)
+00154                 Meshes[i]->setMaterialFlag(flag, newvalue);
+00155         }
+00156 
+00158         virtual void setHardwareMappingHint( E_HARDWARE_MAPPING newMappingHint, E_BUFFER_TYPE buffer=EBT_VERTEX_AND_INDEX )
+00159         {
+00160             for (u32 i=0; i<Meshes.size(); ++i)
+00161                 Meshes[i]->setHardwareMappingHint(newMappingHint, buffer);
+00162         }
+00163 
+00165         virtual void setDirty(E_BUFFER_TYPE buffer=EBT_VERTEX_AND_INDEX)
+00166         {
+00167             for (u32 i=0; i<Meshes.size(); ++i)
+00168                 Meshes[i]->setDirty(buffer);
+00169         }
+00170 
+00172         core::array<IMesh*> Meshes;
+00173 
+00175         core::aabbox3d<f32> Box;
+00176 
+00178         f32 FramesPerSecond;
+00179 
+00181         E_ANIMATED_MESH_TYPE Type;
+00182     };
+00183 
+00184 
+00185 } // end namespace scene
+00186 } // end namespace irr
+00187 
+00188 #endif
+00189 
+
+
+ + + + + -- cgit v1.1