Sophie

Sophie

distrib > Mandriva > 10.2 > i586 > media > contrib > by-pkgid > 04e5d8c10ae76748689b4e7f48e0fa33 > files > 430

libogre5-devel-1.0.0-1mdk.i586.rpm

<html>
<head>
<title>OgreEntity.h Source File - OGRE Documentation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
<link type="text/css" rel="stylesheet" href="style.css">
</head>

<body>
<!-- Generated by Doxygen 1.3.6 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
<h1>OgreEntity.h</h1><a href="OgreEntity_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/*</span>
00002 <span class="comment">-----------------------------------------------------------------------------</span>
00003 <span class="comment">This source file is part of OGRE</span>
00004 <span class="comment">    (Object-oriented Graphics Rendering Engine)</span>
00005 <span class="comment">For the latest info, see http://ogre.sourceforge.net/</span>
00006 <span class="comment"></span>
00007 <span class="comment">Copyright (c) 2000-2005 The OGRE Team</span>
00008 <span class="comment">Also see acknowledgements in Readme.html</span>
00009 <span class="comment"></span>
00010 <span class="comment">This program is free software; you can redistribute it and/or modify it under</span>
00011 <span class="comment">the terms of the GNU Lesser General Public License as published by the Free Software</span>
00012 <span class="comment">Foundation; either version 2 of the License, or (at your option) any later</span>
00013 <span class="comment">version.</span>
00014 <span class="comment"></span>
00015 <span class="comment">This program is distributed in the hope that it will be useful, but WITHOUT</span>
00016 <span class="comment">ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span>
00017 <span class="comment">FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.</span>
00018 <span class="comment"></span>
00019 <span class="comment">You should have received a copy of the GNU Lesser General Public License along with</span>
00020 <span class="comment">this program; if not, write to the Free Software Foundation, Inc., 59 Temple</span>
00021 <span class="comment">Place - Suite 330, Boston, MA 02111-1307, USA, or go to</span>
00022 <span class="comment">http://www.gnu.org/copyleft/lesser.txt.</span>
00023 <span class="comment">-----------------------------------------------------------------------------</span>
00024 <span class="comment">*/</span>
00025 <span class="preprocessor">#ifndef __Entity_H__</span>
00026 <span class="preprocessor"></span><span class="preprocessor">#define __Entity_H__</span>
00027 <span class="preprocessor"></span>
00028 <span class="preprocessor">#include "<a class="code" href="OgrePrerequisites_8h.html">OgrePrerequisites.h</a>"</span>
00029 <span class="preprocessor">#include "<a class="code" href="OgreCommon_8h.html">OgreCommon.h</a>"</span>
00030 
00031 <span class="preprocessor">#include "<a class="code" href="OgreString_8h.html">OgreString.h</a>"</span>
00032 <span class="preprocessor">#include "<a class="code" href="OgreMovableObject_8h.html">OgreMovableObject.h</a>"</span>
00033 <span class="preprocessor">#include "<a class="code" href="OgreAnimationState_8h.html">OgreAnimationState.h</a>"</span>
00034 <span class="preprocessor">#include "<a class="code" href="OgreQuaternion_8h.html">OgreQuaternion.h</a>"</span>
00035 <span class="preprocessor">#include "<a class="code" href="OgreVector3_8h.html">OgreVector3.h</a>"</span>
00036 <span class="preprocessor">#include "<a class="code" href="OgreHardwareBufferManager_8h.html">OgreHardwareBufferManager.h</a>"</span>
00037 <span class="preprocessor">#include "<a class="code" href="OgreMesh_8h.html">OgreMesh.h</a>"</span>
00038 
00039 <span class="keyword">namespace </span>Ogre {
<a name="l00071"></a><a class="code" href="classOgre_1_1Entity.html">00071</a>     <span class="keyword">class </span><a class="code" href="OgrePlatform_8h.html#a13">_OgreExport</a> Entity: <span class="keyword">public</span> <a class="code" href="classOgre_1_1MovableObject.html">MovableObject</a>
00072     {
00073         <span class="comment">// Allow SceneManager full access</span>
<a name="l00074"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityn0">00074</a>         <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classOgre_1_1SceneManager.html">SceneManager</a>;
<a name="l00075"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityn1">00075</a>         <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classOgre_1_1SubEntity.html">SubEntity</a>;
00076     <span class="keyword">public</span>:
<a name="l00077"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityw0">00077</a>     <span class="keyword">typedef</span> std::set&lt;Entity*&gt; <a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityw0">EntitySet</a>;
00078     
00079     <span class="keyword">protected</span>:
00080 
00083         Entity();
00086         Entity( <span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a>&amp; name, <a class="code" href="classOgre_1_1MeshPtr.html">MeshPtr</a>&amp; mesh, <a class="code" href="classOgre_1_1SceneManager.html">SceneManager</a>* creator);
00087 
<a name="l00090"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp0">00090</a>         <a class="code" href="namespaceOgre.html#a426">String</a> mName;
00091 
<a name="l00094"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp1">00094</a>         <a class="code" href="classOgre_1_1MeshPtr.html">MeshPtr</a> mMesh;
00095 
<a name="l00098"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityx0">00098</a>         <span class="keyword">typedef</span> std::vector&lt;SubEntity*&gt; <a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityx0">SubEntityList</a>;
<a name="l00099"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp2">00099</a>         <a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityx0">SubEntityList</a> mSubEntityList;
00100 
<a name="l00104"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp3">00104</a>         <a class="code" href="classOgre_1_1SceneManager.html">SceneManager</a>* mCreatorSceneManager;
00105 
00106 
<a name="l00108"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp4">00108</a>         <a class="code" href="namespaceOgre.html#a0">AnimationStateSet</a>* mAnimationState;
00109 
<a name="l00111"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityt0">00111</a>         <span class="keyword">static</span> <a class="code" href="namespaceOgre.html#a426">String</a> msMovableType;
00112 
00113 
<a name="l00115"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp5">00115</a>         <a class="code" href="classOgre_1_1TempBlendedBufferInfo.html">TempBlendedBufferInfo</a> mTempBlendedBuffer;
<a name="l00117"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp6">00117</a>         <a class="code" href="classOgre_1_1VertexData.html">VertexData</a>* mSharedBlendedVertexData;
00118 
00121         <span class="keyword">const</span> <a class="code" href="classOgre_1_1VertexData.html">VertexData</a>* findBlendedVertexData(<span class="keyword">const</span> <a class="code" href="classOgre_1_1VertexData.html">VertexData</a>* orig);
00124         <a class="code" href="classOgre_1_1SubEntity.html">SubEntity</a>* findSubEntityForVertexData(<span class="keyword">const</span> <a class="code" href="classOgre_1_1VertexData.html">VertexData</a>* orig);
00125 
00128         <span class="keywordtype">void</span> extractTempBufferInfo(<a class="code" href="classOgre_1_1VertexData.html">VertexData</a>* sourceData, <a class="code" href="classOgre_1_1TempBlendedBufferInfo.html">TempBlendedBufferInfo</a>* info);
00130         <a class="code" href="classOgre_1_1VertexData.html">VertexData</a>* cloneVertexDataRemoveBlendInfo(<span class="keyword">const</span> <a class="code" href="classOgre_1_1VertexData.html">VertexData</a>* source);
00132         <span class="keywordtype">void</span> prepareTempBlendBuffers(<span class="keywordtype">void</span>);
00133 
<a name="l00135"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp7">00135</a>         <a class="code" href="classOgre_1_1Matrix4.html">Matrix4</a> *mBoneMatrices;
<a name="l00136"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp8">00136</a>         <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> mNumBoneMatrices;
<a name="l00138"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp9">00138</a>         <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> mFrameAnimationLastUpdated;
00139 
00141         <span class="keywordtype">void</span> updateAnimation(<span class="keywordtype">void</span>);
00142 
<a name="l00146"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp10">00146</a>         <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> *mFrameBonesLastUpdated;
00147 
<a name="l00153"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp11">00153</a>         <a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityw0">EntitySet</a>* mSharedSkeletonEntities;
00154         
00156         <span class="keywordtype">void</span> cacheBoneMatrices(<span class="keywordtype">void</span>);
00157 
<a name="l00159"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp12">00159</a>         <span class="keywordtype">bool</span> mDisplaySkeleton;
<a name="l00161"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp13">00161</a>         <span class="keywordtype">bool</span> mHardwareSkinning;
<a name="l00163"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp14">00163</a>         <span class="keywordtype">bool</span> mVertexProgramInUse;
00164 
00165 
<a name="l00167"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp15">00167</a>         <a class="code" href="namespaceOgre.html#a422">ushort</a> mMeshLodIndex;
00168 
<a name="l00170"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp16">00170</a>         <a class="code" href="namespaceOgre.html#a420">Real</a> mMeshLodFactorInv;
<a name="l00172"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp17">00172</a>         <a class="code" href="namespaceOgre.html#a422">ushort</a> mMinMeshLodIndex;
<a name="l00174"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp18">00174</a>         <a class="code" href="namespaceOgre.html#a422">ushort</a> mMaxMeshLodIndex;
00175 
<a name="l00177"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp19">00177</a>         <a class="code" href="namespaceOgre.html#a420">Real</a> mMaterialLodFactorInv;
<a name="l00179"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp20">00179</a>         <a class="code" href="namespaceOgre.html#a422">ushort</a> mMinMaterialLodIndex;
<a name="l00181"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp21">00181</a>         <a class="code" href="namespaceOgre.html#a422">ushort</a> mMaxMaterialLodIndex;
00182 
<a name="l00184"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp22">00184</a>         <span class="keywordtype">bool</span> mUsingManualLOD;
<a name="l00190"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityx1">00190</a>         <span class="keyword">typedef</span> std::vector&lt;Entity*&gt; <a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityx1">LODEntityList</a>;
<a name="l00191"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp23">00191</a>         <a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityx1">LODEntityList</a> mLodEntityList;
00192 
<a name="l00195"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp24">00195</a>         <a class="code" href="classOgre_1_1SkeletonInstance.html">SkeletonInstance</a>* mSkeletonInstance;
00196 
00198         <span class="keywordtype">void</span> buildSubEntityList(<a class="code" href="classOgre_1_1MeshPtr.html">MeshPtr</a>&amp; mesh, <a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityx0">SubEntityList</a>* sublist);
00199 
00201         <span class="keywordtype">void</span> attachObjectImpl(<a class="code" href="classOgre_1_1MovableObject.html">MovableObject</a> *pMovable, <a class="code" href="classOgre_1_1TagPoint.html">TagPoint</a> *pAttachingPoint);
00202 
00204         <span class="keywordtype">void</span> detachObjectImpl(<a class="code" href="classOgre_1_1MovableObject.html">MovableObject</a>* pObject);
00205 
00207         <span class="keywordtype">void</span> detachAllObjectsImpl(<span class="keywordtype">void</span>);
00208 
00210         <span class="keywordtype">void</span> reevaluateVertexProcessing(<span class="keywordtype">void</span>);
00211 
00212     <span class="keyword">public</span>:
<a name="l00214"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityw1">00214</a>         <span class="keyword">typedef</span> std::map&lt;String, MovableObject*&gt; <a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityw1">ChildObjectList</a>;
00215     <span class="keyword">protected</span>:
<a name="l00216"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp25">00216</a>         <a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityw1">ChildObjectList</a> mChildObjectList;
00217 
00218 
<a name="l00220"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp26">00220</a>         <a class="code" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> *mFullBoundingBox;
00221 
<a name="l00222"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp27">00222</a>         <span class="keywordtype">bool</span> mNormaliseNormals;
00223 
<a name="l00224"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityp28">00224</a>         ShadowRenderableList mShadowRenderables;
00225 
<a name="l00227"></a><a class="code" href="classOgre_1_1Entity_1_1EntityShadowRenderable.html">00227</a>         <span class="keyword">class </span><a class="code" href="class__OgreExport.html">_OgreExport</a> EntityShadowRenderable : <span class="keyword">public</span> <a class="code" href="classOgre_1_1ShadowRenderable.html">ShadowRenderable</a>
00228         {
00229         <span class="keyword">protected</span>:
<a name="l00230"></a><a class="code" href="classOgre_1_1Entity_1_1EntityShadowRenderable.html#Ogre_1_1Entity_1_1EntityShadowRenderablep0">00230</a>             Entity* mParent;
00231             <span class="comment">// Shared link to position buffer</span>
<a name="l00232"></a><a class="code" href="classOgre_1_1Entity_1_1EntityShadowRenderable.html#Ogre_1_1Entity_1_1EntityShadowRenderablep1">00232</a>             <a class="code" href="classOgre_1_1HardwareVertexBufferSharedPtr.html">HardwareVertexBufferSharedPtr</a> mPositionBuffer;
00233             <span class="comment">// Shared link to w-coord buffer (optional)</span>
<a name="l00234"></a><a class="code" href="classOgre_1_1Entity_1_1EntityShadowRenderable.html#Ogre_1_1Entity_1_1EntityShadowRenderablep2">00234</a>             <a class="code" href="classOgre_1_1HardwareVertexBufferSharedPtr.html">HardwareVertexBufferSharedPtr</a> mWBuffer;
00235             <span class="comment">// Link to original vertex data</span>
<a name="l00236"></a><a class="code" href="classOgre_1_1Entity_1_1EntityShadowRenderable.html#Ogre_1_1Entity_1_1EntityShadowRenderablep3">00236</a>             <span class="keyword">const</span> <a class="code" href="classOgre_1_1VertexData.html">VertexData</a>* mOriginalVertexData;
00237             <span class="comment">// Original position buffer source binding</span>
<a name="l00238"></a><a class="code" href="classOgre_1_1Entity_1_1EntityShadowRenderable.html#Ogre_1_1Entity_1_1EntityShadowRenderablep4">00238</a>             <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> mOriginalPosBufferBinding;
<a name="l00240"></a><a class="code" href="classOgre_1_1Entity_1_1EntityShadowRenderable.html#Ogre_1_1Entity_1_1EntityShadowRenderablep5">00240</a>             <a class="code" href="classOgre_1_1SubEntity.html">SubEntity</a>* mSubEntity;
00241 
00242 
00243         <span class="keyword">public</span>:
00244             EntityShadowRenderable(Entity* parent, 
00245                 <a class="code" href="classOgre_1_1HardwareIndexBufferSharedPtr.html">HardwareIndexBufferSharedPtr</a>* indexBuffer, <span class="keyword">const</span> <a class="code" href="classOgre_1_1VertexData.html">VertexData</a>* vertexData, 
00246                 <span class="keywordtype">bool</span> createSeparateLightCap, <a class="code" href="classOgre_1_1SubEntity.html">SubEntity</a>* subent, <span class="keywordtype">bool</span> isLightCap = <span class="keyword">false</span>);
00247             ~EntityShadowRenderable();
00249             <span class="keywordtype">void</span> getWorldTransforms(<a class="code" href="classOgre_1_1Matrix4.html">Matrix4</a>* xform) <span class="keyword">const</span>;
00251             <span class="keyword">const</span> <a class="code" href="classOgre_1_1Quaternion.html">Quaternion</a>&amp; getWorldOrientation(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
00253             <span class="keyword">const</span> <a class="code" href="classOgre_1_1Vector3.html">Vector3</a>&amp; getWorldPosition(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
<a name="l00254"></a><a class="code" href="classOgre_1_1Entity_1_1EntityShadowRenderable.html#Ogre_1_1Entity_1_1EntityShadowRenderablea5">00254</a>             <a class="code" href="classOgre_1_1HardwareVertexBufferSharedPtr.html">HardwareVertexBufferSharedPtr</a> getPositionBuffer(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> mPositionBuffer; }
<a name="l00255"></a><a class="code" href="classOgre_1_1Entity_1_1EntityShadowRenderable.html#Ogre_1_1Entity_1_1EntityShadowRenderablea6">00255</a>             <a class="code" href="classOgre_1_1HardwareVertexBufferSharedPtr.html">HardwareVertexBufferSharedPtr</a> getWBuffer(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> mWBuffer; }
00257             <span class="keywordtype">void</span> rebindPositionBuffer(<span class="keywordtype">void</span>);
00259             <span class="keywordtype">bool</span> isVisible(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
00260 
00261         };
00262     <span class="keyword">public</span>:
00265         ~Entity();
00266 
00269         <a class="code" href="classOgre_1_1MeshPtr.html">MeshPtr</a>&amp; getMesh(<span class="keywordtype">void</span>);
00270 
00273         <a class="code" href="classOgre_1_1SubEntity.html">SubEntity</a>* getSubEntity(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index);
00274     
00278         <a class="code" href="classOgre_1_1SubEntity.html">SubEntity</a>* getSubEntity( <span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a>&amp; name );
00279 
00282         <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getNumSubEntities(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
00283 
00293         Entity* clone( <span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a>&amp; newName );
00294 
00303         <span class="keywordtype">void</span> setMaterialName(<span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a>&amp; name);
00304 
00307         <span class="keywordtype">void</span> _notifyCurrentCamera(<a class="code" href="classOgre_1_1Camera.html">Camera</a>* cam);
00308 
00310         <span class="keywordtype">void</span> setRenderQueueGroup(RenderQueueGroupID queueID);
00311         
00314         <span class="keyword">const</span> <a class="code" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a>&amp; getBoundingBox(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
00315 
00317         <a class="code" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> getChildObjectsBoundingBox(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
00318 
00321         <span class="keywordtype">void</span> _updateRenderQueue(<a class="code" href="classOgre_1_1RenderQueue.html">RenderQueue</a>* queue);
00322 
00324         <span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a>&amp; getName(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
00325 
00327         <span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a>&amp; getMovableType(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
00328 
00335         <a class="code" href="classOgre_1_1AnimationState.html">AnimationState</a>* getAnimationState(<span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a>&amp; name);
00342         <a class="code" href="namespaceOgre.html#a0">AnimationStateSet</a>* getAllAnimationStates(<span class="keywordtype">void</span>);
00343 
00346         <span class="keywordtype">void</span> setDisplaySkeleton(<span class="keywordtype">bool</span> display);
00347 
00348 
00375         <span class="keywordtype">void</span> setMeshLodBias(<a class="code" href="namespaceOgre.html#a420">Real</a> factor, <a class="code" href="namespaceOgre.html#a422">ushort</a> maxDetailIndex = 0, <a class="code" href="namespaceOgre.html#a422">ushort</a> minDetailIndex = 99);
00376 
00403         <span class="keywordtype">void</span> setMaterialLodBias(<a class="code" href="namespaceOgre.html#a420">Real</a> factor, <a class="code" href="namespaceOgre.html#a422">ushort</a> maxDetailIndex = 0, <a class="code" href="namespaceOgre.html#a422">ushort</a> minDetailIndex = 99);
00404             
00406         <span class="keywordtype">void</span> setRenderDetail(SceneDetailLevel renderDetail);
00407 
00418         <span class="keywordtype">void</span> attachObjectToBone(<span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a> &amp;boneName, <a class="code" href="classOgre_1_1MovableObject.html">MovableObject</a> *pMovable, <span class="keyword">const</span> <a class="code" href="classOgre_1_1Quaternion.html">Quaternion</a> &amp;offsetOrientation = Quaternion::IDENTITY, <span class="keyword">const</span> <a class="code" href="classOgre_1_1Vector3.html">Vector3</a> &amp;offsetPosition = Vector3::ZERO);
00419 
00421         <a class="code" href="classOgre_1_1MovableObject.html">MovableObject</a>* detachObjectFromBone(<span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a> &amp;movableName);
00422 
00429         <span class="keywordtype">void</span> detachObjectFromBone(<a class="code" href="classOgre_1_1MovableObject.html">MovableObject</a>* obj);
00430 
00432         <span class="keywordtype">void</span> detachAllObjectsFromBone(<span class="keywordtype">void</span>);
00433 
<a name="l00434"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityw2">00434</a>         <span class="keyword">typedef</span> <a class="code" href="classOgre_1_1MapIterator.html">MapIterator&lt;ChildObjectList&gt;</a> <a class="code" href="classOgre_1_1MapIterator.html">ChildObjectListIterator</a>;
00436         <a class="code" href="classOgre_1_1MapIterator.html">ChildObjectListIterator</a> getAttachedObjectIterator(<span class="keywordtype">void</span>);
00438         <a class="code" href="namespaceOgre.html#a420">Real</a> getBoundingRadius(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
<a name="l00447"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entitya26">00447</a>         <span class="keywordtype">void</span> setNormaliseNormals(<span class="keywordtype">bool</span> normalise) { mNormaliseNormals = normalise; }
00448 
<a name="l00450"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entitya27">00450</a>         <span class="keywordtype">bool</span> getNormaliseNormals(<span class="keywordtype">void</span>)<span class="keyword"> const </span>{<span class="keywordflow">return</span> mNormaliseNormals; }
00451 
00452 
00454         <a class="code" href="classOgre_1_1EdgeData.html">EdgeData</a>* getEdgeList(<span class="keywordtype">void</span>);
00456         ShadowRenderableListIterator getShadowVolumeRenderableIterator(
00457             ShadowTechnique shadowTechnique, <span class="keyword">const</span> <a class="code" href="classOgre_1_1Light.html">Light</a>* light, 
00458             <a class="code" href="classOgre_1_1HardwareIndexBufferSharedPtr.html">HardwareIndexBufferSharedPtr</a>* indexBuffer, 
00459             <span class="keywordtype">bool</span> extrudeVertices, <a class="code" href="namespaceOgre.html#a420">Real</a> extrusionDistance, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> flags = 0 );
00460 
<a name="l00462"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entitya30">00462</a>         <span class="keyword">const</span> <a class="code" href="classOgre_1_1Matrix4.html">Matrix4</a>* _getBoneMatrices(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> mBoneMatrices;}
<a name="l00464"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entitya31">00464</a>         <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> _getNumBoneMatrices(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> mNumBoneMatrices; }
<a name="l00466"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entitya32">00466</a>         <span class="keywordtype">bool</span> hasSkeleton(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> mSkeletonInstance != 0; }
<a name="l00468"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entitya33">00468</a>         <a class="code" href="classOgre_1_1SkeletonInstance.html">SkeletonInstance</a>* getSkeleton(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> mSkeletonInstance; }
<a name="l00478"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entitya34">00478</a>         <span class="keywordtype">bool</span> isHardwareSkinningEnabled(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> mHardwareSkinning; }
00479 
00481         <span class="keywordtype">void</span> _notifyAttached(<a class="code" href="classOgre_1_1Node.html">Node</a>* parent, <span class="keywordtype">bool</span> isTagPoint = <span class="keyword">false</span>);
00482 
00487         <span class="keywordtype">void</span> shareSkeletonInstanceWith(Entity* entity);
00488 
00489     
00492         <span class="keywordtype">void</span> Entity::stopSharingSkeletonInstance();
00493 
00494 
<a name="l00498"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entitya38">00498</a>         <span class="keyword">inline</span> <span class="keywordtype">bool</span> sharesSkeletonInstance()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> mSharedSkeletonEntities != NULL; }
00499 
<a name="l00504"></a><a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entitya39">00504</a>         <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="classOgre_1_1Entity.html#Ogre_1_1Entityw0">EntitySet</a>* getSkeletonInstanceSharingSet()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> mSharedSkeletonEntities; }
00505 
00513         <span class="keywordtype">void</span> _updateAnimation(<span class="keywordtype">void</span>);
00514 
00518         <span class="keyword">const</span> <a class="code" href="classOgre_1_1VertexData.html">VertexData</a>* _getSharedBlendedVertexData(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
00519 
00520 
00521 
00522     };
00523 
00524 } <span class="comment">// namespace</span>
00525 
00526 <span class="preprocessor">#endif</span>
</pre></div><p>
Copyright &copy; 2000-2005 by The OGRE Team<br />
Last modified Wed Feb 23 00:19:05 2005
</p>
</body>
</html>