Pyrogenesis  trunk
Public Member Functions | Protected Types | Protected Attributes | List of all members
CShaderProgramFFP_Model_Base Class Reference

Common functionality for model rendering in the fixed renderpath. More...

Inheritance diagram for CShaderProgramFFP_Model_Base:
Inheritance graph
[legend]
Collaboration diagram for CShaderProgramFFP_Model_Base:
Collaboration graph
[legend]

Public Member Functions

 CShaderProgramFFP_Model_Base (const CShaderDefines &defines, int streamflags)
 
virtual void Uniform (Binding id, const CMatrix3D &v)
 
virtual void Uniform (Binding id, float v0, float v1, float v2, float v3)
 
virtual void Bind ()
 Binds the shader into the GL context. More...
 
virtual void Unbind ()
 Unbinds the shader from the GL context. More...
 
- Public Member Functions inherited from CShaderProgramFFP
 CShaderProgramFFP (int streamflags)
 
 ~CShaderProgramFFP ()
 
virtual void Reload ()
 
int GetUniformIndex (CStrIntern id)
 
virtual Binding GetTextureBinding (uniform_id_t id)
 
virtual void BindTexture (texture_id_t id, Handle tex)
 
virtual void BindTexture (texture_id_t id, GLuint tex)
 
virtual void BindTexture (Binding id, Handle tex)
 
virtual Binding GetUniformBinding (uniform_id_t id)
 
virtual void Uniform (Binding id, size_t count, const CMatrix3D *v)
 
- Public Member Functions inherited from CShaderProgram
virtual ~CShaderProgram ()
 
bool IsValid () const
 Returns whether this shader was successfully loaded. More...
 
int GetStreamFlags () const
 Returns bitset of STREAM_* value, indicating what vertex data streams the vertex shader needs (e.g. More...
 
void BindTexture (texture_id_t id, CTexturePtr tex)
 
void Uniform (Binding id, int v)
 
void Uniform (Binding id, float v)
 
void Uniform (Binding id, float v0, float v1)
 
void Uniform (Binding id, const CVector3D &v)
 
void Uniform (Binding id, const CColor &v)
 
void Uniform (uniform_id_t id, int v)
 
void Uniform (uniform_id_t id, float v)
 
void Uniform (uniform_id_t id, float v0, float v1)
 
void Uniform (uniform_id_t id, const CVector3D &v)
 
void Uniform (uniform_id_t id, const CColor &v)
 
void Uniform (uniform_id_t id, float v0, float v1, float v2, float v3)
 
void Uniform (uniform_id_t id, const CMatrix3D &v)
 
void Uniform (uniform_id_t id, size_t count, const CMatrix3D *v)
 
virtual void VertexPointer (GLint size, GLenum type, GLsizei stride, const void *pointer)
 
virtual void NormalPointer (GLenum type, GLsizei stride, const void *pointer)
 
virtual void ColorPointer (GLint size, GLenum type, GLsizei stride, const void *pointer)
 
virtual void TexCoordPointer (GLenum texture, GLint size, GLenum type, GLsizei stride, const void *pointer)
 
virtual void VertexAttribPointer (attrib_id_t id, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer)
 
virtual void VertexAttribIPointer (attrib_id_t id, GLint size, GLenum type, GLsizei stride, const void *pointer)
 
void AssertPointersBound ()
 Checks that all the required vertex attributes have been set. More...
 

Protected Types

enum  { ID_transform, ID_objectColor, ID_playerColor, ID_losTransform }
 

Protected Attributes

bool m_IgnoreLos
 
- Protected Attributes inherited from CShaderProgramFFP
std::map< CStrIntern, int > m_UniformIndexes
 
- Protected Attributes inherited from CShaderProgram
bool m_IsValid
 
int m_StreamFlags
 
int m_ValidStreams
 

Additional Inherited Members

- Public Types inherited from CShaderProgram
typedef CStrIntern attrib_id_t
 
typedef CStrIntern texture_id_t
 
typedef CStrIntern uniform_id_t
 
typedef std::pair< int, GLenum > frag_index_pair_t
 
- Static Public Member Functions inherited from CShaderProgram
static CShaderProgramConstructARB (const VfsPath &vertexFile, const VfsPath &fragmentFile, const CShaderDefines &defines, const std::map< CStrIntern, int > &vertexIndexes, const std::map< CStrIntern, frag_index_pair_t > &fragmentIndexes, int streamflags)
 Construct based on ARB vertex/fragment program files. More...
 
static CShaderProgramConstructGLSL (const VfsPath &vertexFile, const VfsPath &fragmentFile, const CShaderDefines &defines, const std::map< CStrIntern, int > &vertexAttribs, int streamflags)
 Construct based on GLSL vertex/fragment shader files. More...
 
static CShaderProgramConstructFFP (const std::string &id, const CShaderDefines &defines)
 Construct an instance of a pre-defined fixed-function pipeline setup. More...
 
- Protected Member Functions inherited from CShaderProgramFFP
void SetUniformIndex (const char *id, int value)
 
- Protected Member Functions inherited from CShaderProgram
 CShaderProgram (int streamflags)
 
void BindClientStates ()
 
void UnbindClientStates ()
 

Detailed Description

Common functionality for model rendering in the fixed renderpath.

Member Enumeration Documentation

anonymous enum
protected
Enumerator
ID_transform 
ID_objectColor 
ID_playerColor 
ID_losTransform 

Constructor & Destructor Documentation

CShaderProgramFFP_Model_Base::CShaderProgramFFP_Model_Base ( const CShaderDefines defines,
int  streamflags 
)
inline

Member Function Documentation

virtual void CShaderProgramFFP_Model_Base::Bind ( )
inlinevirtual

Binds the shader into the GL context.

Call this before calling Uniform() or trying to render with it.

Implements CShaderProgram.

Reimplemented in CShaderProgramFFP_ModelSolidTex, CShaderProgramFFP_ModelSolid, CShaderProgramFFP_ModelColor, and CShaderProgramFFP_Model.

virtual void CShaderProgramFFP_Model_Base::Unbind ( )
inlinevirtual

Unbinds the shader from the GL context.

Call this after rendering with it.

Implements CShaderProgram.

Reimplemented in CShaderProgramFFP_ModelColor, and CShaderProgramFFP_Model.

virtual void CShaderProgramFFP_Model_Base::Uniform ( Binding  id,
const CMatrix3D v 
)
inlinevirtual

Reimplemented from CShaderProgramFFP.

virtual void CShaderProgramFFP_Model_Base::Uniform ( Binding  id,
float  v0,
float  v1,
float  v2,
float  v3 
)
inlinevirtual

Member Data Documentation

bool CShaderProgramFFP_Model_Base::m_IgnoreLos
protected

The documentation for this class was generated from the following file: