Irrlicht 3D Engine
 
Loading...
Searching...
No Matches
irr::scene::quake3 Namespace Reference

Classes

struct  IShader
 A Parsed Shader Holding Variables ordered in Groups. More...
 
class  IShaderManager
 Manages various Quake3 Shader Styles. More...
 
struct  Noiser
 
struct  Q3LevelLoadParameter
 
struct  SBlendFunc
 A blend function for a q3 shader. More...
 
struct  SModifierFunction
 
struct  SVarGroup
 
struct  SVarGroupList
 holding a group a variable More...
 
struct  SVariable
 

Typedefs

typedef IShader IEntity
 
typedef core::array< IEntitytQ3EntityList
 
typedef core::array< core::stringctStringList
 
typedef core::array< video::ITexture * > tTexArray
 

Enumerations

enum  eQ3MeshIndex {
  E_Q3_MESH_GEOMETRY = 0 , E_Q3_MESH_ITEMS , E_Q3_MESH_BILLBOARD , E_Q3_MESH_FOG ,
  E_Q3_MESH_UNRESOLVED , E_Q3_MESH_SIZE
}
 Hold the different Mesh Types used for getMesh. More...
 
enum  eQ3ModifierFunction {
  TCMOD = 0 , DEFORMVERTEXES = 1 , RGBGEN = 2 , TCGEN = 3 ,
  MAP = 4 , ALPHAGEN = 5 , FUNCTION2 = 0x10 , SCROLL = FUNCTION2 + 1 ,
  SCALE = FUNCTION2 + 2 , ROTATE = FUNCTION2 + 3 , STRETCH = FUNCTION2 + 4 , TURBULENCE = FUNCTION2 + 5 ,
  WAVE = FUNCTION2 + 6 , IDENTITY = FUNCTION2 + 7 , VERTEX = FUNCTION2 + 8 , TEXTURE = FUNCTION2 + 9 ,
  LIGHTMAP = FUNCTION2 + 10 , ENVIRONMENT = FUNCTION2 + 11 , DOLLAR_LIGHTMAP = FUNCTION2 + 12 , BULGE = FUNCTION2 + 13 ,
  AUTOSPRITE = FUNCTION2 + 14 , AUTOSPRITE2 = FUNCTION2 + 15 , TRANSFORM = FUNCTION2 + 16 , EXACTVERTEX = FUNCTION2 + 17 ,
  CONSTANT = FUNCTION2 + 18 , LIGHTINGSPECULAR = FUNCTION2 + 19 , MOVE = FUNCTION2 + 20 , NORMAL = FUNCTION2 + 21 ,
  IDENTITYLIGHTING = FUNCTION2 + 22 , WAVE_MODIFIER_FUNCTION = 0x30 , SINUS = WAVE_MODIFIER_FUNCTION + 1 , COSINUS = WAVE_MODIFIER_FUNCTION + 2 ,
  SQUARE = WAVE_MODIFIER_FUNCTION + 3 , TRIANGLE = WAVE_MODIFIER_FUNCTION + 4 , SAWTOOTH = WAVE_MODIFIER_FUNCTION + 5 , SAWTOOTH_INVERSE = WAVE_MODIFIER_FUNCTION + 6 ,
  NOISE = WAVE_MODIFIER_FUNCTION + 7 , UNKNOWN = -2
}
 

Functions

core::stringcdumpShader (core::stringc &dest, const IShader *shader, bool entity=false)
 
void dumpVarGroup (core::stringc &dest, const SVarGroup *group, s32 stack)
 
f32 getAsFloat (const core::stringc &string, u32 &pos)
 
void getAsStringList (tStringList &list, s32 max, const core::stringc &string, u32 &startPos)
 
core::vector3df getAsVector3df (const core::stringc &string, u32 &pos)
 get a quake3 vector translated to irrlicht position (x,-z,y )
 
bool getCullingFunction (const core::stringc &cull)
 
u8 getDepthFunction (const core::stringc &string)
 
core::vector3df getMD3Normal (u32 i, u32 j)
 
void getModifierFunc (SModifierFunction &fill, const core::stringc &string, u32 &pos)
 
void getTextures (tTexArray &textures, const core::stringc &name, u32 &startPos, io::IFileSystem *fileSystem, video::IVideoDriver *driver)
 
s16 isEqual (const core::stringc &string, u32 &pos, const c8 *list[], u16 listSize)
 

Typedef Documentation

◆ IEntity

Definition at line 687 of file IQ3Shader.h.

◆ tQ3EntityList

Definition at line 689 of file IQ3Shader.h.

◆ tStringList

◆ tTexArray

Definition at line 80 of file IQ3Shader.h.

Enumeration Type Documentation

◆ eQ3MeshIndex

Hold the different Mesh Types used for getMesh.

Enumerator
E_Q3_MESH_GEOMETRY 
E_Q3_MESH_ITEMS 
E_Q3_MESH_BILLBOARD 
E_Q3_MESH_FOG 
E_Q3_MESH_UNRESOLVED 
E_Q3_MESH_SIZE 

Definition at line 24 of file IQ3Shader.h.

◆ eQ3ModifierFunction

Enumerator
TCMOD 
DEFORMVERTEXES 
RGBGEN 
TCGEN 
MAP 
ALPHAGEN 
FUNCTION2 
SCROLL 
SCALE 
ROTATE 
STRETCH 
TURBULENCE 
WAVE 
IDENTITY 
VERTEX 
TEXTURE 
LIGHTMAP 
ENVIRONMENT 
DOLLAR_LIGHTMAP 
BULGE 
AUTOSPRITE 
AUTOSPRITE2 
TRANSFORM 
EXACTVERTEX 
CONSTANT 
LIGHTINGSPECULAR 
MOVE 
NORMAL 
IDENTITYLIGHTING 
WAVE_MODIFIER_FUNCTION 
SINUS 
COSINUS 
SQUARE 
TRIANGLE 
SAWTOOTH 
SAWTOOTH_INVERSE 
NOISE 
UNKNOWN 

Definition at line 372 of file IQ3Shader.h.

Function Documentation

◆ dumpShader()

core::stringc & irr::scene::quake3::dumpShader ( core::stringc dest,
const IShader shader,
bool  entity = false 
)
inline

◆ dumpVarGroup()

void irr::scene::quake3::dumpVarGroup ( core::stringc dest,
const SVarGroup group,
s32  stack 
)
inline

Definition at line 695 of file IQ3Shader.h.

References irr::scene::quake3::SVarGroup::Variable.

Referenced by dumpShader().

◆ getAsFloat()

f32 irr::scene::quake3::getAsFloat ( const core::stringc string,
u32 pos 
)
inline

Definition at line 105 of file IQ3Shader.h.

References irr::core::fast_atof_move().

Referenced by getAsVector3df(), and getModifierFunc().

◆ getAsStringList()

void irr::scene::quake3::getAsStringList ( tStringList list,
s32  max,
const core::stringc string,
u32 startPos 
)
inline

Definition at line 130 of file IQ3Shader.h.

Referenced by getTextures().

◆ getAsVector3df()

core::vector3df irr::scene::quake3::getAsVector3df ( const core::stringc string,
u32 pos 
)
inline

get a quake3 vector translated to irrlicht position (x,-z,y )

Definition at line 115 of file IQ3Shader.h.

References getAsFloat(), irr::core::vector3d< T >::X, irr::core::vector3d< T >::Y, and irr::core::vector3d< T >::Z.

◆ getCullingFunction()

bool irr::scene::quake3::getCullingFunction ( const core::stringc cull)
inline

Definition at line 171 of file IQ3Shader.h.

References isEqual().

◆ getDepthFunction()

u8 irr::scene::quake3::getDepthFunction ( const core::stringc string)
inline

Definition at line 193 of file IQ3Shader.h.

References irr::video::ECFN_EQUAL, irr::video::ECFN_LESSEQUAL, and isEqual().

◆ getMD3Normal()

core::vector3df irr::scene::quake3::getMD3Normal ( u32  i,
u32  j 
)
inline

Definition at line 510 of file IQ3Shader.h.

References irr::core::PI.

◆ getModifierFunc()

◆ getTextures()

◆ isEqual()

s16 irr::scene::quake3::isEqual ( const core::stringc string,
u32 pos,
const c8 list[],
u16  listSize 
)
inline

Definition at line 83 of file IQ3Shader.h.

Referenced by getCullingFunction(), getDepthFunction(), and getModifierFunc().