Logo Search packages:      
Sourcecode: blender version File versions  Download package

BL_Shader Class Reference

#include <BL_Shader.h>

Inheritance diagram for BL_Shader:

List of all members.

Detailed Description

BL_Shader shader access

Definition at line 92 of file BL_Shader.h.

Public Types

enum  AttribTypes { SHD_TANGENT = 1 }
enum  GenType {

Public Member Functions

virtual int _delattr (const STR_String &attr)
virtual PyObject * _getattr (const STR_String &attr)
virtual PyObject * _repr (void)
virtual int _setattr (const STR_String &attr, PyObject *value)
void ApplyShader ()
void BindAttribute (const STR_String &attr, int loc)
 BL_Shader (PyTypeObject *T=&Type)
int GetAttribLocation (const STR_String &name)
int GetAttribute ()
bool GetError ()
const char * GetFragPtr ()
int getNumPass ()
unsigned int GetProg ()
int GetUniformLocation (const STR_String &name)
const char * GetVertPtr ()
bool isA (const char *mytypename)
bool isA (PyTypeObject *T)
 KX_PYMETHOD_DOC (BL_Shader, setSampler)
 KX_PYMETHOD_DOC (BL_Shader, setAttrib)
 KX_PYMETHOD_DOC (BL_Shader, setUniformDef)
 KX_PYMETHOD_DOC (BL_Shader, setUniformMatrix3)
 KX_PYMETHOD_DOC (BL_Shader, setUniformMatrix4)
 KX_PYMETHOD_DOC (BL_Shader, setUniformiv)
 KX_PYMETHOD_DOC (BL_Shader, setUniformfv)
 KX_PYMETHOD_DOC (BL_Shader, setUniform1i)
 KX_PYMETHOD_DOC (BL_Shader, setUniform2i)
 KX_PYMETHOD_DOC (BL_Shader, setUniform3i)
 KX_PYMETHOD_DOC (BL_Shader, setUniform4i)
 KX_PYMETHOD_DOC (BL_Shader, setUniform1f)
 KX_PYMETHOD_DOC (BL_Shader, setUniform2f)
 KX_PYMETHOD_DOC (BL_Shader, setUniform3f)
 KX_PYMETHOD_DOC (BL_Shader, setUniform4f)
 KX_PYMETHOD_DOC (BL_Shader, validate)
 KX_PYMETHOD_DOC (BL_Shader, isValid)
 KX_PYMETHOD_DOC (BL_Shader, setNumberOfPasses)
 KX_PYMETHOD_DOC (BL_Shader, getFragmentProg)
 KX_PYMETHOD_DOC (BL_Shader, getVertexProg)
 KX_PYMETHOD_DOC (BL_Shader, delSource)
 KX_PYMETHOD_DOC (BL_Shader, setSource)
const bool Ok () const
PyObject * Py_isA (PyObject *args)
void SetFragPtr (char *frag)
void SetProg (bool enable)
void SetSampler (int loc, int unit)
void SetUniform (int uniform, const int val)
void SetUniform (int uniform, const unsigned int &val)
void SetUniform (int uniform, const int *val, int len)
void SetUniform (int uniform, const float *val, int len)
void SetUniform (int uniform, const float &val)
void SetUniform (int uniform, const MT_Matrix3x3 &vec, bool transpose=false)
void SetUniform (int uniform, const MT_Matrix4x4 &vec, bool transpose=false)
void SetUniform (int uniform, const MT_Tuple4 &vec)
void SetUniform (int uniform, const MT_Tuple3 &vec)
void SetUniform (int uniform, const MT_Tuple2 &vec)
void SetUniformfv (int location, int type, float *param, int size, bool transpose=false)
void SetUniformiv (int location, int type, int *param, int size, bool transpose=false)
void SetVertPtr (char *vert)
void UnloadShader ()
void Update (const class KX_MeshSlot &ms, class RAS_IRasterizer *rasty)

Static Public Member Functions

static PyObject * __getattr (PyObject *PyObj, char *attr)
static PyObject * __repr (PyObject *PyObj)
static int __setattr (PyObject *PyObj, char *attr, PyObject *value)
static void PyDestructor (PyObject *P)
static PyObject * sPy_isA (PyObject *self, PyObject *args, PyObject *kwd)

Private Types

typedef std::vector< BL_Uniform * > BL_UniformVec
typedef std::vector
< BL_DefUniform * > 

Private Member Functions

void ClearUniforms ()
BL_UniformFindUniform (const int location)
bool LinkProgram ()

Private Attributes

char * fragProg
int mAttr
bool mDirty
bool mError
bool mOk
int mPass
BL_UniformVecDef mPreDef
unsigned int mShader
BL_UniformVec mUniforms
bool mUse
char * vertProg

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

Generated by  Doxygen 1.6.0   Back to index