aboutsummaryrefslogtreecommitdiff
path: root/source/Irrlicht/CBSPMeshFileLoader.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/Irrlicht/CBSPMeshFileLoader.cpp')
-rw-r--r--source/Irrlicht/CBSPMeshFileLoader.cpp107
1 files changed, 0 insertions, 107 deletions
diff --git a/source/Irrlicht/CBSPMeshFileLoader.cpp b/source/Irrlicht/CBSPMeshFileLoader.cpp
deleted file mode 100644
index 01ac04a..0000000
--- a/source/Irrlicht/CBSPMeshFileLoader.cpp
+++ /dev/null
@@ -1,107 +0,0 @@
-// Copyright (C) 2002-2012 Nikolaus Gebhardt
-// 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_BSP_LOADER_
-
-#include "CBSPMeshFileLoader.h"
-#include "CQ3LevelMesh.h"
-
-namespace irr
-{
-namespace scene
-{
-
-//! Constructor
-CBSPMeshFileLoader::CBSPMeshFileLoader(scene::ISceneManager* smgr,
- io::IFileSystem* fs)
-: FileSystem(fs), SceneManager(smgr)
-{
-
- #ifdef _DEBUG
- setDebugName("CBSPMeshFileLoader");
- #endif
-
- if (FileSystem)
- FileSystem->grab();
-}
-
-
-//! destructor
-CBSPMeshFileLoader::~CBSPMeshFileLoader()
-{
- if (FileSystem)
- FileSystem->drop();
-}
-
-
-//! returns true if the file maybe is able to be loaded by this class
-//! based on the file extension (e.g. ".bsp")
-bool CBSPMeshFileLoader::isALoadableFileExtension(const io::path& filename) const
-{
- return core::hasFileExtension ( filename, "bsp", "shader", "cfg" );
-}
-
-
-//! creates/loads an animated mesh from the file.
-//! \return Pointer to the created mesh. Returns 0 if loading failed.
-//! If you no longer need the mesh, you should call IAnimatedMesh::drop().
-//! See IReferenceCounted::drop() for more information.
-IAnimatedMesh* CBSPMeshFileLoader::createMesh(io::IReadFile* file)
-{
- s32 type = core::isFileExtension ( file->getFileName(), "bsp", "shader", "cfg" );
- CQ3LevelMesh* q = 0;
-
- switch ( type )
- {
- case 1:
- q = new CQ3LevelMesh(FileSystem, SceneManager, LoadParam);
-
- // determine real shaders in LoadParam
- if ( 0 == LoadParam.loadAllShaders )
- {
- q->getShader("scripts/common.shader");
- q->getShader("scripts/sfx.shader");
- q->getShader("scripts/gfx.shader");
- q->getShader("scripts/liquid.shader");
- q->getShader("scripts/models.shader");
- q->getShader("scripts/walls.shader");
- //q->getShader("scripts/sky.shader");
- }
-
- if ( q->loadFile(file) )
- return q;
-
- q->drop();
- break;
-
- case 2:
- q = new CQ3LevelMesh(FileSystem, SceneManager,LoadParam);
- q->getShader( file );
- return q;
- break;
-
- case 3:
- // load quake 3 loading parameter
- if ( file->getFileName() == "levelparameter.cfg" )
- {
- file->read ( &LoadParam, sizeof ( LoadParam ) );
- }
- else
- {
- q = new CQ3LevelMesh(FileSystem, SceneManager,LoadParam);
- q->getConfiguration( file );
- return q;
- }
- break;
- }
-
- return 0;
-}
-
-} // end namespace scene
-} // end namespace irr
-
-#endif // _IRR_COMPILE_WITH_BSP_LOADER_
-