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/_i_skinned_mesh_8h_source.html | 288 --------------------- 1 file changed, 288 deletions(-) delete mode 100644 libraries/irrlicht-1.8.1/doc/html/_i_skinned_mesh_8h_source.html (limited to 'libraries/irrlicht-1.8.1/doc/html/_i_skinned_mesh_8h_source.html') diff --git a/libraries/irrlicht-1.8.1/doc/html/_i_skinned_mesh_8h_source.html b/libraries/irrlicht-1.8.1/doc/html/_i_skinned_mesh_8h_source.html deleted file mode 100644 index 3825eb8..0000000 --- a/libraries/irrlicht-1.8.1/doc/html/_i_skinned_mesh_8h_source.html +++ /dev/null @@ -1,288 +0,0 @@ - - -
- -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 __I_SKINNED_MESH_H_INCLUDED__ -00006 #define __I_SKINNED_MESH_H_INCLUDED__ -00007 -00008 #include "irrArray.h" -00009 #include "IBoneSceneNode.h" -00010 #include "IAnimatedMesh.h" -00011 #include "SSkinMeshBuffer.h" -00012 -00013 namespace irr -00014 { -00015 namespace scene -00016 { -00017 -00018 enum E_INTERPOLATION_MODE -00019 { -00020 // constant does use the current key-values without interpolation -00021 EIM_CONSTANT = 0, -00022 -00023 // linear interpolation -00024 EIM_LINEAR, -00025 -00027 EIM_COUNT -00028 }; -00029 -00030 -00032 class ISkinnedMesh : public IAnimatedMesh -00033 { -00034 public: -00035 -00037 -00038 virtual u32 getJointCount() const = 0; -00039 -00041 -00044 virtual const c8* getJointName(u32 number) const = 0; -00045 -00047 -00049 virtual s32 getJointNumber(const c8* name) const = 0; -00050 -00052 -00057 virtual bool useAnimationFrom(const ISkinnedMesh *mesh) = 0; -00058 -00060 -00063 virtual void updateNormalsWhenAnimating(bool on) = 0; -00064 -00066 virtual void setInterpolationMode(E_INTERPOLATION_MODE mode) = 0; -00067 -00069 virtual void animateMesh(f32 frame, f32 blend)=0; -00070 -00072 virtual void skinMesh() = 0; -00073 -00075 -00076 virtual void convertMeshToTangents() = 0; -00077 -00079 /* This feature is not implementated in Irrlicht yet */ -00080 virtual bool setHardwareSkinning(bool on) = 0; -00081 -00083 struct SWeight -00084 { -00086 u16 buffer_id; //I doubt 32bits is needed -00087 -00089 u32 vertex_id; //Store global ID here -00090 -00092 f32 strength; -00093 -00094 private: -00096 friend class CSkinnedMesh; -00097 bool *Moved; -00098 core::vector3df StaticPos; -00099 core::vector3df StaticNormal; -00100 }; -00101 -00102 -00104 struct SPositionKey -00105 { -00106 f32 frame; -00107 core::vector3df position; -00108 }; -00109 -00111 struct SScaleKey -00112 { -00113 f32 frame; -00114 core::vector3df scale; -00115 }; -00116 -00118 struct SRotationKey -00119 { -00120 f32 frame; -00121 core::quaternion rotation; -00122 }; -00123 -00125 struct SJoint -00126 { -00127 SJoint() : UseAnimationFrom(0), GlobalSkinningSpace(false), -00128 positionHint(-1),scaleHint(-1),rotationHint(-1) -00129 { -00130 } -00131 -00133 core::stringc Name; -00134 -00136 core::matrix4 LocalMatrix; -00137 -00139 core::array<SJoint*> Children; -00140 -00142 core::array<u32> AttachedMeshes; -00143 -00145 core::array<SPositionKey> PositionKeys; -00146 -00148 core::array<SScaleKey> ScaleKeys; -00149 -00151 core::array<SRotationKey> RotationKeys; -00152 -00154 core::array<SWeight> Weights; -00155 -00157 core::matrix4 GlobalMatrix; -00158 core::matrix4 GlobalAnimatedMatrix; -00159 core::matrix4 LocalAnimatedMatrix; -00160 core::vector3df Animatedposition; -00161 core::vector3df Animatedscale; -00162 core::quaternion Animatedrotation; -00163 -00164 core::matrix4 GlobalInversedMatrix; //the x format pre-calculates this -00165 -00166 private: -00168 friend class CSkinnedMesh; -00169 -00170 SJoint *UseAnimationFrom; -00171 bool GlobalSkinningSpace; -00172 -00173 s32 positionHint; -00174 s32 scaleHint; -00175 s32 rotationHint; -00176 }; -00177 -00178 -00179 //Interface for the mesh loaders (finalize should lock these functions, and they should have some prefix like loader_ -00180 -00181 //these functions will use the needed arrays, set values, etc to help the loaders -00182 -00184 virtual core::array<SSkinMeshBuffer*>& getMeshBuffers() = 0; -00185 -00187 virtual core::array<SJoint*>& getAllJoints() = 0; -00188 -00190 virtual const core::array<SJoint*>& getAllJoints() const = 0; -00191 -00193 virtual void finalize() = 0; -00194 -00196 virtual SSkinMeshBuffer* addMeshBuffer() = 0; -00197 -00199 virtual SJoint* addJoint(SJoint *parent=0) = 0; -00200 -00202 virtual SWeight* addWeight(SJoint *joint) = 0; -00203 -00205 virtual SPositionKey* addPositionKey(SJoint *joint) = 0; -00207 virtual SScaleKey* addScaleKey(SJoint *joint) = 0; -00209 virtual SRotationKey* addRotationKey(SJoint *joint) = 0; -00210 -00212 virtual bool isStatic()=0; -00213 }; -00214 -00215 } // end namespace scene -00216 } // end namespace irr -00217 -00218 #endif -00219 -