Add compileflags to allow removing specific scene-nodes from the engine.
Following flags got added: _IRR_COMPILE_WITH_OCTREE_SCENENODE_ _IRR_COMPILE_WITH_TERRAIN_SCENENODE_ _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_ _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_ _IRR_COMPILE_WITH_WATER_SURFACE_SCENENODE_ _IRR_COMPILE_WITH_SKYDOME_SCENENODE_ _IRR_COMPILE_WITH_CUBE_SCENENODE_ _IRR_COMPILE_WITH_SPHERE_SCENENODE_ Also the corresponding _NO_IRR_COMPILE_WITH... flags certainly. More such flags might be added in future, but will test first if it really makes a difference for WebGL apps which were the main reason to add this. git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5805 dfc29bdd-3216-0410-991c-e03cc46cb475master
parent
4aa790812f
commit
040aa5043a
|
@ -348,6 +348,54 @@ tool <http://developer.nvidia.com/object/nvperfhud_home.html>. */
|
|||
//! Uncomment the following line if you want to ignore the deprecated warnings
|
||||
//#define IGNORE_DEPRECATED_WARNING
|
||||
|
||||
//! Define _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_ to support ShadowVolumes
|
||||
#define _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
#ifdef NO_IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
#undef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
#endif
|
||||
|
||||
//! Define _IRR_COMPILE_WITH_OCTREE_SCENENODE_ to support OctreeSceneNodes
|
||||
#define _IRR_COMPILE_WITH_OCTREE_SCENENODE_
|
||||
#ifdef NO_IRR_COMPILE_WITH_OCTREE_SCENENODE_
|
||||
#undef _IRR_COMPILE_WITH_OCTREE_SCENENODE_
|
||||
#endif
|
||||
|
||||
//! Define _IRR_COMPILE_WITH_TERRAIN_SCENENODE_ to support TerrainSceneNodes
|
||||
#define _IRR_COMPILE_WITH_TERRAIN_SCENENODE_
|
||||
#ifdef NO_IRR_COMPILE_WITH_TERRAIN_SCENENODE_
|
||||
#undef _IRR_COMPILE_WITH_TERRAIN_SCENENODE_
|
||||
#endif
|
||||
|
||||
//! Define _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_ to support BillboardSceneNodes
|
||||
#define _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_
|
||||
#ifdef NO_IRR_COMPILE_WITH_BILLBOARD_SCENENODE_
|
||||
#undef _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_
|
||||
#endif
|
||||
|
||||
//! Define _IRR_COMPILE_WITH_WATER_SURFACE_SCENENODE_ to support WaterSurfaceSceneNodes
|
||||
#define _IRR_COMPILE_WITH_WATER_SURFACE_SCENENODE_
|
||||
#ifdef NO_IRR_COMPILE_WITH_WATER_SURFACE_SCENENODE_
|
||||
#undef _IRR_COMPILE_WITH_WATER_SURFACE_SCENENODE_
|
||||
#endif
|
||||
|
||||
//! Define _IRR_COMPILE_WITH_SKYDOME_SCENENODE_ to support SkydomeSceneNodes
|
||||
#define _IRR_COMPILE_WITH_SKYDOME_SCENENODE_
|
||||
#ifdef NO_IRR_COMPILE_WITH_SKYDOME_SCENENODE_
|
||||
#undef _IRR_COMPILE_WITH_SKYDOME_SCENENODE_
|
||||
#endif
|
||||
|
||||
//! Define _IRR_COMPILE_WITH_CUBE_SCENENODE_ to support CubeSceneNodes
|
||||
#define _IRR_COMPILE_WITH_CUBE_SCENENODE_
|
||||
#ifdef NO_IRR_COMPILE_WITH_CUBE_SCENENODE_
|
||||
#undef _IRR_COMPILE_WITH_CUBE_SCENENODE_
|
||||
#endif
|
||||
|
||||
//! Define _IRR_COMPILE_WITH_SPHERE_SCENENODE_ to support CubeSceneNodes
|
||||
#define _IRR_COMPILE_WITH_SPHERE_SCENENODE_
|
||||
#ifdef NO_IRR_COMPILE_WITH_SPHERE_SCENENODE_
|
||||
#undef _IRR_COMPILE_WITH_SPHERE_SCENENODE_
|
||||
#endif
|
||||
|
||||
//! Define _IRR_COMPILE_WITH_IRR_SCENE_LOADER_ if you want to be able to load
|
||||
/** .irr scenes using ISceneManager::loadScene */
|
||||
#define _IRR_COMPILE_WITH_IRR_SCENE_LOADER_
|
||||
|
|
|
@ -7,7 +7,11 @@
|
|||
#include "ISceneManager.h"
|
||||
#include "S3DVertex.h"
|
||||
#include "os.h"
|
||||
#ifdef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
#include "CShadowVolumeSceneNode.h"
|
||||
#else
|
||||
#include "IShadowVolumeSceneNode.h"
|
||||
#endif // _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
#include "IAnimatedMeshMD3.h"
|
||||
#include "CSkinnedMesh.h"
|
||||
#include "IDummyTransformationSceneNode.h"
|
||||
|
@ -556,6 +560,7 @@ u32 CAnimatedMeshSceneNode::getMaterialCount() const
|
|||
IShadowVolumeSceneNode* CAnimatedMeshSceneNode::addShadowVolumeSceneNode(
|
||||
const IMesh* shadowMesh, s32 id, bool zfailmethod, f32 infinity)
|
||||
{
|
||||
#ifdef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
if (!SceneManager->getVideoDriver()->queryFeature(video::EVDF_STENCIL_BUFFER))
|
||||
return 0;
|
||||
|
||||
|
@ -567,6 +572,9 @@ IShadowVolumeSceneNode* CAnimatedMeshSceneNode::addShadowVolumeSceneNode(
|
|||
|
||||
Shadow = new CShadowVolumeSceneNode(shadowMesh, this, SceneManager, id, zfailmethod, infinity);
|
||||
return Shadow;
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
//! Returns a pointer to a child node, which has the same transformation as
|
||||
|
|
|
@ -2,6 +2,8 @@
|
|||
// This file is part of the "Irrlicht Engine".
|
||||
// For conditions of distribution and use, see copyright notice in irrlicht.h
|
||||
|
||||
#include "IrrCompileConfig.h"
|
||||
#ifdef _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_
|
||||
#include "CBillboardSceneNode.h"
|
||||
#include "IVideoDriver.h"
|
||||
#include "ISceneManager.h"
|
||||
|
@ -316,3 +318,4 @@ ISceneNode* CBillboardSceneNode::clone(ISceneNode* newParent, ISceneManager* new
|
|||
} // end namespace scene
|
||||
} // end namespace irr
|
||||
|
||||
#endif // _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_
|
||||
|
|
|
@ -2,13 +2,19 @@
|
|||
// This file is part of the "Irrlicht Engine".
|
||||
// For conditions of distribution and use, see copyright notice in irrlicht.h
|
||||
|
||||
#include "IrrCompileConfig.h"
|
||||
#ifdef _IRR_COMPILE_WITH_CUBE_SCENENODE
|
||||
#include "CCubeSceneNode.h"
|
||||
#include "IVideoDriver.h"
|
||||
#include "ISceneManager.h"
|
||||
#include "S3DVertex.h"
|
||||
#include "SMeshBuffer.h"
|
||||
#include "os.h"
|
||||
#ifdef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
#include "CShadowVolumeSceneNode.h"
|
||||
#else
|
||||
#include "IShadowVolumeSceneNode.h"
|
||||
#endif // _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
|
||||
namespace irr
|
||||
{
|
||||
|
@ -147,6 +153,7 @@ bool CCubeSceneNode::removeChild(ISceneNode* child)
|
|||
IShadowVolumeSceneNode* CCubeSceneNode::addShadowVolumeSceneNode(
|
||||
const IMesh* shadowMesh, s32 id, bool zfailmethod, f32 infinity)
|
||||
{
|
||||
#ifdef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
if (!SceneManager->getVideoDriver()->queryFeature(video::EVDF_STENCIL_BUFFER))
|
||||
return 0;
|
||||
|
||||
|
@ -158,6 +165,9 @@ IShadowVolumeSceneNode* CCubeSceneNode::addShadowVolumeSceneNode(
|
|||
|
||||
Shadow = new CShadowVolumeSceneNode(shadowMesh, this, SceneManager, id, zfailmethod, infinity);
|
||||
return Shadow;
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
@ -233,3 +243,4 @@ ISceneNode* CCubeSceneNode::clone(ISceneNode* newParent, ISceneManager* newManag
|
|||
} // end namespace scene
|
||||
} // end namespace irr
|
||||
|
||||
#endif // _IRR_COMPILE_WITH_CUBE_SCENENODE
|
||||
|
|
|
@ -11,7 +11,11 @@
|
|||
#include "IAnimatedMesh.h"
|
||||
#include "IMaterialRenderer.h"
|
||||
#include "IFileSystem.h"
|
||||
#ifdef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
#include "CShadowVolumeSceneNode.h"
|
||||
#else
|
||||
#include "IShadowVolumeSceneNode.h"
|
||||
#endif // _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
|
||||
namespace irr
|
||||
{
|
||||
|
@ -297,6 +301,7 @@ void CMeshSceneNode::setMesh(IMesh* mesh)
|
|||
IShadowVolumeSceneNode* CMeshSceneNode::addShadowVolumeSceneNode(
|
||||
const IMesh* shadowMesh, s32 id, bool zfailmethod, f32 infinity)
|
||||
{
|
||||
#ifdef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
if (!SceneManager->getVideoDriver()->queryFeature(video::EVDF_STENCIL_BUFFER))
|
||||
return 0;
|
||||
|
||||
|
@ -308,6 +313,9 @@ IShadowVolumeSceneNode* CMeshSceneNode::addShadowVolumeSceneNode(
|
|||
|
||||
Shadow = new CShadowVolumeSceneNode(shadowMesh, this, SceneManager, id, zfailmethod, infinity);
|
||||
return Shadow;
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
// This file is part of the "Irrlicht Engine".
|
||||
// For conditions of distribution and use, see copyright notice in irrlicht.h
|
||||
|
||||
#include "IrrCompileConfig.h"
|
||||
#ifdef _IRR_COMPILE_WITH_OCTREE_SCENENODE_
|
||||
|
||||
#include "COctreeSceneNode.h"
|
||||
#include "Octree.h"
|
||||
#include "ISceneManager.h"
|
||||
|
@ -11,7 +14,11 @@
|
|||
#include "IAnimatedMesh.h"
|
||||
#include "IMaterialRenderer.h"
|
||||
#include "os.h"
|
||||
#ifdef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
#include "CShadowVolumeSceneNode.h"
|
||||
#else
|
||||
#include "IShadowVolumeSceneNode.h"
|
||||
#endif // _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
#include "EProfileIDs.h"
|
||||
#include "IProfiler.h"
|
||||
|
||||
|
@ -339,6 +346,7 @@ EOCTREE_POLYGON_CHECKS COctreeSceneNode::getPolygonChecks() const
|
|||
IShadowVolumeSceneNode* COctreeSceneNode::addShadowVolumeSceneNode(
|
||||
const IMesh* shadowMesh, s32 id, bool zfailmethod, f32 infinity)
|
||||
{
|
||||
#ifdef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
if (!SceneManager->getVideoDriver()->queryFeature(video::EVDF_STENCIL_BUFFER))
|
||||
return 0;
|
||||
|
||||
|
@ -350,6 +358,9 @@ IShadowVolumeSceneNode* COctreeSceneNode::addShadowVolumeSceneNode(
|
|||
|
||||
Shadow = new CShadowVolumeSceneNode(shadowMesh, this, SceneManager, id, zfailmethod, infinity);
|
||||
return Shadow;
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
@ -671,3 +682,4 @@ bool COctreeSceneNode::isReadOnlyMaterials() const
|
|||
} // end namespace scene
|
||||
} // end namespace irr
|
||||
|
||||
#endif // _IRR_COMPILE_WITH_OCTREE_SCENENODE_
|
||||
|
|
|
@ -14,7 +14,11 @@
|
|||
#include "IMeshManipulator.h"
|
||||
#include "SMesh.h"
|
||||
#include "IMaterialRenderer.h"
|
||||
#ifdef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
#include "CShadowVolumeSceneNode.h"
|
||||
#else
|
||||
#include "IShadowVolumeSceneNode.h"
|
||||
#endif
|
||||
|
||||
namespace irr
|
||||
{
|
||||
|
@ -516,6 +520,7 @@ bool CQuake3ShaderSceneNode::removeChild(ISceneNode* child)
|
|||
IShadowVolumeSceneNode* CQuake3ShaderSceneNode::addShadowVolumeSceneNode(
|
||||
const IMesh* shadowMesh, s32 id, bool zfailmethod, f32 infinity)
|
||||
{
|
||||
#ifdef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
if (!SceneManager->getVideoDriver()->queryFeature(video::EVDF_STENCIL_BUFFER))
|
||||
return 0;
|
||||
|
||||
|
@ -527,6 +532,9 @@ IShadowVolumeSceneNode* CQuake3ShaderSceneNode::addShadowVolumeSceneNode(
|
|||
|
||||
Shadow = new CShadowVolumeSceneNode(shadowMesh, this, SceneManager, id, zfailmethod, infinity);
|
||||
return Shadow;
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -138,24 +138,38 @@
|
|||
#include "CB3DMeshWriter.h"
|
||||
#endif
|
||||
|
||||
#ifdef _IRR_COMPILE_WITH_CUBE_SCENENODE
|
||||
#include "CCubeSceneNode.h"
|
||||
#endif // _IRR_COMPILE_WITH_CUBE_SCENENODE
|
||||
#ifdef _IRR_COMPILE_WITH_SPHERE_SCENENODE_
|
||||
#include "CSphereSceneNode.h"
|
||||
#endif
|
||||
#include "CAnimatedMeshSceneNode.h"
|
||||
#ifdef _IRR_COMPILE_WITH_OCTREE_SCENENODE_
|
||||
#include "COctreeSceneNode.h"
|
||||
#endif // #ifdef _IRR_COMPILE_WITH_OCTREE_SCENENODE_
|
||||
#include "CCameraSceneNode.h"
|
||||
#include "CLightSceneNode.h"
|
||||
#ifdef _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_
|
||||
#include "CBillboardSceneNode.h"
|
||||
#endif // _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_
|
||||
#include "CMeshSceneNode.h"
|
||||
#include "CSkyBoxSceneNode.h"
|
||||
#ifdef _IRR_COMPILE_WITH_SKYDOME_SCENENODE_
|
||||
#include "CSkyDomeSceneNode.h"
|
||||
#endif // _IRR_COMPILE_WITH_SKYDOME_SCENENODE_
|
||||
|
||||
#ifdef _IRR_COMPILE_WITH_PARTICLES_
|
||||
#include "CParticleSystemSceneNode.h"
|
||||
#endif // _IRR_COMPILE_WITH_PARTICLES_
|
||||
|
||||
#include "CDummyTransformationSceneNode.h"
|
||||
#ifdef _IRR_COMPILE_WITH_WATER_SURFACE_SCENENODE_
|
||||
#include "CWaterSurfaceSceneNode.h"
|
||||
#endif // _IRR_COMPILE_WITH_WATER_SURFACE_SCENENODE_
|
||||
#ifdef _IRR_COMPILE_WITH_TERRAIN_SCENENODE_
|
||||
#include "CTerrainSceneNode.h"
|
||||
#endif // _IRR_COMPILE_WITH_TERRAIN_SCENENODE_
|
||||
#include "CEmptySceneNode.h"
|
||||
#include "CTextSceneNode.h"
|
||||
#include "CQuake3ShaderSceneNode.h"
|
||||
|
@ -168,7 +182,9 @@
|
|||
#include "COctreeTriangleSelector.h"
|
||||
#include "CTriangleBBSelector.h"
|
||||
#include "CMetaTriangleSelector.h"
|
||||
#ifdef _IRR_COMPILE_WITH_TERRAIN_SCENENODE_
|
||||
#include "CTerrainTriangleSelector.h"
|
||||
#endif // _IRR_COMPILE_WITH_TERRAIN_SCENENODE_
|
||||
|
||||
#include "CSceneNodeAnimatorRotation.h"
|
||||
#include "CSceneNodeAnimatorFlyCircle.h"
|
||||
|
@ -588,6 +604,7 @@ IMeshSceneNode* CSceneManager::addCubeSceneNode(f32 size, ISceneNode* parent,
|
|||
s32 id, const core::vector3df& position,
|
||||
const core::vector3df& rotation, const core::vector3df& scale)
|
||||
{
|
||||
#ifdef _IRR_COMPILE_WITH_CUBE_SCENENODE
|
||||
if (!parent)
|
||||
parent = this;
|
||||
|
||||
|
@ -595,6 +612,9 @@ IMeshSceneNode* CSceneManager::addCubeSceneNode(f32 size, ISceneNode* parent,
|
|||
node->drop();
|
||||
|
||||
return node;
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
@ -603,6 +623,7 @@ IMeshSceneNode* CSceneManager::addSphereSceneNode(f32 radius, s32 polyCount,
|
|||
ISceneNode* parent, s32 id, const core::vector3df& position,
|
||||
const core::vector3df& rotation, const core::vector3df& scale)
|
||||
{
|
||||
#ifdef _IRR_COMPILE_WITH_SPHERE_SCENENODE_
|
||||
if (!parent)
|
||||
parent = this;
|
||||
|
||||
|
@ -610,6 +631,9 @@ IMeshSceneNode* CSceneManager::addSphereSceneNode(f32 radius, s32 polyCount,
|
|||
node->drop();
|
||||
|
||||
return node;
|
||||
#else
|
||||
return 0;
|
||||
#endif // _IRR_COMPILE_WITH_SPHERE_SCENENODE_
|
||||
}
|
||||
|
||||
|
||||
|
@ -637,6 +661,7 @@ ISceneNode* CSceneManager::addWaterSurfaceSceneNode(IMesh* mesh, f32 waveHeight,
|
|||
ISceneNode* parent, s32 id, const core::vector3df& position,
|
||||
const core::vector3df& rotation, const core::vector3df& scale)
|
||||
{
|
||||
#ifdef _IRR_COMPILE_WITH_WATER_SURFACE_SCENENODE_
|
||||
if (!parent)
|
||||
parent = this;
|
||||
|
||||
|
@ -646,6 +671,9 @@ ISceneNode* CSceneManager::addWaterSurfaceSceneNode(IMesh* mesh, f32 waveHeight,
|
|||
node->drop();
|
||||
|
||||
return node;
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
@ -689,6 +717,7 @@ IOctreeSceneNode* CSceneManager::addOctreeSceneNode(IAnimatedMesh* mesh, ISceneN
|
|||
IOctreeSceneNode* CSceneManager::addOctreeSceneNode(IMesh* mesh, ISceneNode* parent,
|
||||
s32 id, s32 minimalPolysPerNode, bool alsoAddIfMeshPointerZero)
|
||||
{
|
||||
#ifdef _IRR_COMPILE_WITH_OCTREE_SCENENODE_
|
||||
if (!alsoAddIfMeshPointerZero && !mesh)
|
||||
return 0;
|
||||
|
||||
|
@ -704,6 +733,9 @@ IOctreeSceneNode* CSceneManager::addOctreeSceneNode(IMesh* mesh, ISceneNode* par
|
|||
}
|
||||
|
||||
return node;
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
@ -801,6 +833,7 @@ IBillboardSceneNode* CSceneManager::addBillboardSceneNode(ISceneNode* parent,
|
|||
video::SColor colorTop, video::SColor colorBottom
|
||||
)
|
||||
{
|
||||
#ifdef _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_
|
||||
if (!parent)
|
||||
parent = this;
|
||||
|
||||
|
@ -809,6 +842,9 @@ IBillboardSceneNode* CSceneManager::addBillboardSceneNode(ISceneNode* parent,
|
|||
node->drop();
|
||||
|
||||
return node;
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
@ -835,6 +871,7 @@ ISceneNode* CSceneManager::addSkyDomeSceneNode(video::ITexture* texture,
|
|||
u32 horiRes, u32 vertRes, f32 texturePercentage,f32 spherePercentage, f32 radius,
|
||||
ISceneNode* parent, s32 id)
|
||||
{
|
||||
#ifdef _IRR_COMPILE_WITH_SKYDOME_SCENENODE_
|
||||
if (!parent)
|
||||
parent = this;
|
||||
|
||||
|
@ -843,6 +880,9 @@ ISceneNode* CSceneManager::addSkyDomeSceneNode(video::ITexture* texture,
|
|||
|
||||
node->drop();
|
||||
return node;
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
@ -909,6 +949,7 @@ ITerrainSceneNode* CSceneManager::addTerrainSceneNode(
|
|||
s32 smoothFactor,
|
||||
bool addAlsoIfHeightmapEmpty)
|
||||
{
|
||||
#ifdef _IRR_COMPILE_WITH_TERRAIN_SCENENODE_
|
||||
if (!parent)
|
||||
parent = this;
|
||||
|
||||
|
@ -933,6 +974,9 @@ ITerrainSceneNode* CSceneManager::addTerrainSceneNode(
|
|||
|
||||
node->drop();
|
||||
return node;
|
||||
#else
|
||||
return 0;
|
||||
#endif // _IRR_COMPILE_WITH_TERRAIN_SCENENODE_
|
||||
}
|
||||
|
||||
|
||||
|
@ -1920,7 +1964,11 @@ IMetaTriangleSelector* CSceneManager::createMetaTriangleSelector()
|
|||
ITriangleSelector* CSceneManager::createTerrainTriangleSelector(
|
||||
ITerrainSceneNode* node, s32 LOD)
|
||||
{
|
||||
#ifdef _IRR_COMPILE_WITH_TERRAIN_SCENENODE_
|
||||
return new CTerrainTriangleSelector(node, LOD);
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -2,6 +2,10 @@
|
|||
// This file is part of the "Irrlicht Engine".
|
||||
// For conditions of distribution and use, see copyright notice in irrlicht.h
|
||||
|
||||
#include "IrrCompileConfig.h"
|
||||
|
||||
#ifdef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
|
||||
#include "CShadowVolumeSceneNode.h"
|
||||
#include "ISceneManager.h"
|
||||
#include "IMesh.h"
|
||||
|
@ -417,3 +421,5 @@ void CShadowVolumeSceneNode::calculateAdjacency()
|
|||
|
||||
} // end namespace scene
|
||||
} // end namespace irr
|
||||
|
||||
#endif // _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
|
|
|
@ -3,6 +3,8 @@
|
|||
// For conditions of distribution and use, see copyright notice in irrlicht.h
|
||||
// Code for this scene node has been contributed by Anders la Cour-Harbo (alc)
|
||||
|
||||
#include "IrrCompileConfig.h"
|
||||
#ifdef _IRR_COMPILE_WITH_SKYDOME_SCENENODE_
|
||||
#include "CSkyDomeSceneNode.h"
|
||||
#include "IVideoDriver.h"
|
||||
#include "ISceneManager.h"
|
||||
|
@ -262,3 +264,5 @@ ISceneNode* CSkyDomeSceneNode::clone(ISceneNode* newParent, ISceneManager* newMa
|
|||
|
||||
} // namespace scene
|
||||
} // namespace irr
|
||||
|
||||
#endif // _IRR_COMPILE_WITH_SKYDOME_SCENENODE_
|
||||
|
|
|
@ -2,12 +2,18 @@
|
|||
// This file is part of the "Irrlicht Engine".
|
||||
// For conditions of distribution and use, see copyright notice in irrlicht.h
|
||||
|
||||
#include "IrrCompileConfig.h"
|
||||
#ifdef _IRR_COMPILE_WITH_SPHERE_SCENENODE_
|
||||
#include "CSphereSceneNode.h"
|
||||
#include "IVideoDriver.h"
|
||||
#include "ISceneManager.h"
|
||||
#include "S3DVertex.h"
|
||||
#include "os.h"
|
||||
#ifdef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
#include "CShadowVolumeSceneNode.h"
|
||||
#else
|
||||
#include "IShadowVolumeSceneNode.h"
|
||||
#endif // _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
|
||||
namespace irr
|
||||
{
|
||||
|
@ -83,6 +89,7 @@ bool CSphereSceneNode::removeChild(ISceneNode* child)
|
|||
IShadowVolumeSceneNode* CSphereSceneNode::addShadowVolumeSceneNode(
|
||||
const IMesh* shadowMesh, s32 id, bool zfailmethod, f32 infinity)
|
||||
{
|
||||
#ifdef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_
|
||||
if (!SceneManager->getVideoDriver()->queryFeature(video::EVDF_STENCIL_BUFFER))
|
||||
return 0;
|
||||
|
||||
|
@ -94,6 +101,9 @@ IShadowVolumeSceneNode* CSphereSceneNode::addShadowVolumeSceneNode(
|
|||
|
||||
Shadow = new CShadowVolumeSceneNode(shadowMesh, this, SceneManager, id, zfailmethod, infinity);
|
||||
return Shadow;
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
@ -197,3 +207,4 @@ ISceneNode* CSphereSceneNode::clone(ISceneNode* newParent, ISceneManager* newMan
|
|||
} // end namespace scene
|
||||
} // end namespace irr
|
||||
|
||||
#endif // _IRR_COMPILE_WITH_SPHERE_SCENENODE_
|
||||
|
|
|
@ -7,6 +7,10 @@
|
|||
// distributed under this licence. I only modified some parts. A lot of thanks
|
||||
// go to him.
|
||||
|
||||
#include "IrrCompileConfig.h"
|
||||
|
||||
#ifdef _IRR_COMPILE_WITH_TERRAIN_SCENENODE_
|
||||
|
||||
#include "CTerrainSceneNode.h"
|
||||
#include "CTerrainTriangleSelector.h"
|
||||
#include "IVideoDriver.h"
|
||||
|
@ -1511,4 +1515,4 @@ namespace scene
|
|||
} // end namespace scene
|
||||
} // end namespace irr
|
||||
|
||||
|
||||
#endif // _IRR_COMPILE_WITH_TERRAIN_SCENENODE_
|
||||
|
|
|
@ -2,6 +2,10 @@
|
|||
// This file is part of the "Irrlicht Engine".
|
||||
// For conditions of distribution and use, see copyright notice in irrlicht.h
|
||||
|
||||
#include "IrrCompileConfig.h"
|
||||
|
||||
#ifdef _IRR_COMPILE_WITH_TERRAIN_SCENENODE_
|
||||
|
||||
#include "CTerrainTriangleSelector.h"
|
||||
#include "CTerrainSceneNode.h"
|
||||
#include "os.h"
|
||||
|
@ -263,3 +267,5 @@ const ITriangleSelector* CTerrainTriangleSelector::getSelector(u32 index) const
|
|||
|
||||
} // end namespace scene
|
||||
} // end namespace irr
|
||||
|
||||
#endif // _IRR_COMPILE_WITH_TERRAIN_SCENENODE_
|
||||
|
|
|
@ -2,6 +2,8 @@
|
|||
// This file is part of the "Irrlicht Engine".
|
||||
// For conditions of distribution and use, see copyright notice in irrlicht.h
|
||||
|
||||
#include "IrrCompileConfig.h"
|
||||
#ifdef _IRR_COMPILE_WITH_WATER_SURFACE_SCENENODE_
|
||||
#include "CWaterSurfaceSceneNode.h"
|
||||
#include "ISceneManager.h"
|
||||
#include "IMeshManipulator.h"
|
||||
|
@ -135,3 +137,4 @@ f32 CWaterSurfaceSceneNode::addWave(const core::vector3df &source, f32 time) con
|
|||
} // end namespace scene
|
||||
} // end namespace irr
|
||||
|
||||
#endif // _IRR_COMPILE_WITH_WATER_SURFACE_SCENENODE_
|
||||
|
|
Loading…
Reference in New Issue