123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184 |
- // 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
- #ifndef IRR_I_SCENE_PARAMETERS_H_INCLUDED
- #define IRR_I_SCENE_PARAMETERS_H_INCLUDED
- #include "irrTypes.h"
- /*! \file SceneParameters.h
- \brief Header file containing all scene parameters for modifying mesh loading etc.
- This file includes all parameter names which can be set using ISceneManager::getParameters()
- to modify the behavior of plugins and mesh loaders.
- */
- namespace irr
- {
- namespace scene
- {
- //! Name of the parameter for changing how Irrlicht handles the ZWrite flag for transparent (blending) materials
- /** The default behavior in Irrlicht is to disable writing to the
- z-buffer for all really transparent, i.e. blending materials. This
- avoids problems with intersecting faces, but can also break renderings.
- If transparent materials should use the SMaterial flag for ZWriteEnable
- just as other material types use this attribute.
- Use it like this:
- \code
- SceneManager->getParameters()->setAttribute(scene::ALLOW_ZWRITE_ON_TRANSPARENT, true);
- \endcode
- **/
- const c8* const ALLOW_ZWRITE_ON_TRANSPARENT = "Allow_ZWrite_On_Transparent";
- //! Deprecated, use IMeshLoader::getMeshTextureLoader()->setTexturePath instead.
- /** Was used for changing the texture path of the built-in csm loader like this:
- \code
- SceneManager->getParameters()->setAttribute(scene::CSM_TEXTURE_PATH, "path/to/your/textures");
- \endcode
- **/
- const c8* const CSM_TEXTURE_PATH = "CSM_TexturePath";
- //! Deprecated, use IMeshLoader::getMeshTextureLoader()->setTexturePath instead.
- /** Was used for changing the texture path of the built-in lmts loader like this:
- \code
- SceneManager->getParameters()->setAttribute(scene::LMTS_TEXTURE_PATH, "path/to/your/textures");
- \endcode
- **/
- const c8* const LMTS_TEXTURE_PATH = "LMTS_TexturePath";
- //! Deprecated, use IMeshLoader::getMeshTextureLoader()->setTexturePath instead.
- /** Was used for changing the texture path of the built-in MY3D loader like this:
- \code
- SceneManager->getParameters()->setAttribute(scene::MY3D_TEXTURE_PATH, "path/to/your/textures");
- \endcode
- **/
- const c8* const MY3D_TEXTURE_PATH = "MY3D_TexturePath";
- //! Name of the parameter specifying the COLLADA mesh loading mode
- /**
- Specifies if the COLLADA loader should create instances of the models, lights and
- cameras when loading COLLADA meshes. By default, this is set to false. If this is
- set to true, the ISceneManager::getMesh() method will only return a pointer to a
- dummy mesh and create instances of all meshes and lights and cameras in the collada
- file by itself. Example:
- \code
- SceneManager->getParameters()->setAttribute(scene::COLLADA_CREATE_SCENE_INSTANCES, true);
- \endcode
- */
- const c8* const COLLADA_CREATE_SCENE_INSTANCES = "COLLADA_CreateSceneInstances";
- //! Deprecated, use IMeshLoader::getMeshTextureLoader()->setTexturePath instead.
- /** This path is prefixed to the file names defined in the Deled file when loading
- textures. This allows to alter the paths for a specific project setting.
- Use it like this:
- \code
- SceneManager->getStringParameters()->setAttribute(scene::DMF_TEXTURE_PATH, "path/to/your/textures");
- \endcode
- **/
- const c8* const DMF_TEXTURE_PATH = "DMF_TexturePath";
- //! Name of the parameter for preserving DMF textures dir structure with built-in DMF loader.
- /** If this parameter is set to true, the texture directory defined in the Deled file
- is ignored, and only the texture name is used to find the proper file. Otherwise, the
- texture path is also used, which allows to use a nicer media layout.
- Use it like this:
- \code
- //this way you won't use this setting (default)
- SceneManager->getParameters()->setAttribute(scene::DMF_IGNORE_MATERIALS_DIRS, false);
- \endcode
- \code
- //this way you'll use this setting
- SceneManager->getParameters()->setAttribute(scene::DMF_IGNORE_MATERIALS_DIRS, true);
- \endcode
- **/
- const c8* const DMF_IGNORE_MATERIALS_DIRS = "DMF_IgnoreMaterialsDir";
- //! Name of the parameter for setting reference value of alpha in transparent materials.
- /** Use it like this:
- \code
- //this way you'll set alpha ref to 0.1
- SceneManager->getParameters()->setAttribute(scene::DMF_ALPHA_CHANNEL_REF, 0.1);
- \endcode
- **/
- const c8* const DMF_ALPHA_CHANNEL_REF = "DMF_AlphaRef";
- //! Name of the parameter for choose to flip or not tga files.
- /** Use it like this:
- \code
- //this way you'll choose to flip alpha textures
- SceneManager->getParameters()->setAttribute(scene::DMF_FLIP_ALPHA_TEXTURES, true);
- \endcode
- **/
- const c8* const DMF_FLIP_ALPHA_TEXTURES = "DMF_FlipAlpha";
- //! Deprecated, use IMeshLoader::getMeshTextureLoader()->setTexturePath instead.
- /** Was used for changing the texture path of the built-in obj loader like this:
- \code
- SceneManager->getParameters()->setAttribute(scene::OBJ_TEXTURE_PATH, "path/to/your/textures");
- \endcode
- **/
- const c8* const OBJ_TEXTURE_PATH = "OBJ_TexturePath";
- //! Flag to avoid loading group structures in .obj files
- /** Use it like this:
- \code
- SceneManager->getParameters()->setAttribute(scene::OBJ_LOADER_IGNORE_GROUPS, true);
- \endcode
- **/
- const c8* const OBJ_LOADER_IGNORE_GROUPS = "OBJ_IgnoreGroups";
- //! Flag to avoid loading material .mtl file for .obj files
- /** Use it like this:
- \code
- SceneManager->getParameters()->setAttribute(scene::OBJ_LOADER_IGNORE_MATERIAL_FILES, true);
- \endcode
- **/
- const c8* const OBJ_LOADER_IGNORE_MATERIAL_FILES = "OBJ_IgnoreMaterialFiles";
- //! Flag to ignore the b3d file's mipmapping flag
- /** Instead Irrlicht's texture creation flag is used. Use it like this:
- \code
- SceneManager->getParameters()->setAttribute(scene::B3D_LOADER_IGNORE_MIPMAP_FLAG, true);
- \endcode
- **/
- const c8* const B3D_LOADER_IGNORE_MIPMAP_FLAG = "B3D_IgnoreMipmapFlag";
- //! Deprecated, use IMeshLoader::getMeshTextureLoader()->setTexturePath instead.
- /** Was used for changing the texture path of the built-in b3d loader like this:
- \code
- SceneManager->getParameters()->setAttribute(scene::B3D_TEXTURE_PATH, "path/to/your/textures");
- \endcode
- **/
- const c8* const B3D_TEXTURE_PATH = "B3D_TexturePath";
- //! Flag set as parameter when the scene manager is used as editor
- /** In this way special animators like deletion animators can be stopped from
- deleting scene nodes for example */
- const c8* const IRR_SCENE_MANAGER_IS_EDITOR = "IRR_Editor";
- //! Name of the parameter for setting the length of debug normals.
- /** Use it like this:
- \code
- SceneManager->getParameters()->setAttribute(scene::DEBUG_NORMAL_LENGTH, 1.5f);
- \endcode
- **/
- const c8* const DEBUG_NORMAL_LENGTH = "DEBUG_Normal_Length";
- //! Name of the parameter for setting the color of debug normals.
- /** Use it like this:
- \code
- SceneManager->getParameters()->setAttributeAsColor(scene::DEBUG_NORMAL_COLOR, video::SColor(255, 255, 255, 255));
- \endcode
- **/
- const c8* const DEBUG_NORMAL_COLOR = "DEBUG_Normal_Color";
- } // end namespace scene
- } // end namespace irr
- #endif
|