libmoldeo (Moldeo 1.0 Core)  1.0
libmoldeo is the group of objects and functions that executes the basic operations of Moldeo 1.0 Platform.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
moShaderGLSL Class Reference

#include <moShaderGLSL.h>

Inheritance diagram for moShaderGLSL:
moShader moAbstract

Public Member Functions

 moShaderGLSL ()
 
virtual ~moShaderGLSL ()
 
virtual MOboolean Init ()
 
virtual MOboolean Finish ()
 
virtual void CreateVertShader (const moText &vert_source)
 
virtual void CreateFragShader (const moText &frag_source)
 
virtual void CreateShader (const moText &vert_source, const moText &frag_source)
 
virtual void LoadVertShader (const moText &vert_filename)
 
virtual void LoadFragShader (const moText &frag_filename)
 
virtual void LoadShader (const moText &vert_filename, const moText &frag_filename)
 
virtual void StartShader ()
 
virtual void StopShader ()
 
void PrintVertShaderLog ()
 
void PrintFragShaderLog ()
 
GLint GetUniformID (const moText &uName)
 
GLint GetAttribID (const moText &aName)
 
- Public Member Functions inherited from moShader
 moShader ()
 
virtual ~moShader ()
 
virtual MOboolean ShaderActive ()
 
MOint VertErrorCode ()
 
MOint FragErrorCode ()
 
MOuint GetType ()
 
void SetType (MOuint p_type)
 
moText GetName ()
 
void SetName (const moText &p_name)
 
moTexturedGrid GetGrid ()
 
void SetGrid (moTexturedGrid p_grid)
 
void DrawGrid (MOint w, MOint h, MOint l)
 
- Public Member Functions inherited from moAbstract
 moAbstract ()
 
virtual ~moAbstract ()
 
MOboolean Initialized ()
 Pregunta si está inicializado. More...
 

Protected Member Functions

void compileVertShader (const moText &vert_source)
 
void compileFragShader (const moText &frag_source)
 
void linkProgram ()
 
void printInfoLog (GLhandleARB obj)
 
- Protected Member Functions inherited from moShader
virtual moText LoadShaderSource (const moText &p_fn)
 

Protected Attributes

GLhandleARB m_ProgramObject
 
GLhandleARB m_FragmentShader
 
GLhandleARB m_VertexShader
 
- Protected Attributes inherited from moShader
MOuint m_type
 
moText m_name
 
moTexturedGrid m_grid
 
MOboolean m_Active
 
MOint m_VertErrorCode
 
MOint m_FragErrorCode
 

Additional Inherited Members

- Public Attributes inherited from moShader
moConfig m_Config
 
- Public Attributes inherited from moAbstract
MOboolean m_bInitialized
 Valor de inicialización More...
 
- Static Public Attributes inherited from moAbstract
static moDebugMODebug2 = new moDebug()
 Clase de impresión de errores para depuración More...
 
static moTextHeapMODebug = new moTextHeap()
 Lista de textos. More...
 

Detailed Description

Clase que encapsula un shader escrito en el lenguaje GLSL.

Definition at line 47 of file moShaderGLSL.h.

Constructor & Destructor Documentation

moShaderGLSL::moShaderGLSL ( )

El constructor por defecto de la clase.

Definition at line 37 of file moShaderGLSL.cpp.

moShaderGLSL::~moShaderGLSL ( )
virtual

El destructor por defecto de la clase.

Definition at line 46 of file moShaderGLSL.cpp.

Member Function Documentation

void moShaderGLSL::compileFragShader ( const moText frag_source)
protectedvirtual

Implements moShader.

Definition at line 199 of file moShaderGLSL.cpp.

void moShaderGLSL::compileVertShader ( const moText vert_source)
protectedvirtual

Implements moShader.

Definition at line 156 of file moShaderGLSL.cpp.

void moShaderGLSL::CreateFragShader ( const moText frag_source)
virtual

Crea el shader de fragmentos a partir del código fuente en frag_source.

Parameters
frag_sourcecódigo fuente del shader de vértices.

Implements moShader.

Definition at line 85 of file moShaderGLSL.cpp.

void moShaderGLSL::CreateShader ( const moText vert_source,
const moText frag_source 
)
virtual

Crea los shaders de vértices y fragmentos a partir del código fuente en vert_source y frag_source.

Parameters
vert_sourcecódigo fuente del shader de vértices.
frag_sourcecódigo fuente del shader de vértices.

Implements moShader.

Definition at line 92 of file moShaderGLSL.cpp.

void moShaderGLSL::CreateVertShader ( const moText vert_source)
virtual

Crea el shader de vértices a partir del código fuente en vert_source.

Parameters
vert_sourcecódigo fuente del shader de vértices.

Implements moShader.

Definition at line 78 of file moShaderGLSL.cpp.

MOboolean moShaderGLSL::Finish ( )
virtual

Método de finalización.

Returns
true si la operación fue exitosa, false en caso contrario.

Reimplemented from moShader.

Definition at line 56 of file moShaderGLSL.cpp.

GLint moShaderGLSL::GetAttribID ( const moText aName)

Devuelve el identificador OpenGL del parámetro por atributo en el shader (puede ocurrir en el shader de vértices o fragmentos

Parameters
pNamenombre del parámetro por atributo.
Returns
identificador OpenGL del parámetro.

Definition at line 151 of file moShaderGLSL.cpp.

GLint moShaderGLSL::GetUniformID ( const moText uName)

Devuelve el identificador OpenGL del parámetro uniforme en el shader (puede ocurrir en el shader de vértices o fragmentos

Parameters
pNamenombre del parámetro uniforme.
Returns
identificador OpenGL del parámetro.

Definition at line 145 of file moShaderGLSL.cpp.

MOboolean moShaderGLSL::Init ( )
virtual

Método de inicialización.

Returns
true si la operación fue exitosa, false en caso contrario.

Reimplemented from moShader.

Definition at line 51 of file moShaderGLSL.cpp.

void moShaderGLSL::linkProgram ( )
protected

Definition at line 238 of file moShaderGLSL.cpp.

void moShaderGLSL::LoadFragShader ( const moText frag_filename)
virtual

Crea el shader de fragmentos a partir del código fuente en el archivo frag_filename.

Parameters
frag_filenamenombre del archivo con el código fuente del shader de fragmentos.

Implements moShader.

Definition at line 110 of file moShaderGLSL.cpp.

void moShaderGLSL::LoadShader ( const moText vert_filename,
const moText frag_filename 
)
virtual

Crea los shaders de vértices y fragmentos a partir del código fuente en los archivos vert_filename y frag_filename.

Parameters
vert_filenamenombre del archivo con el código fuente del shader de vértices.
frag_filenamenombre del archivo con el código fuente del shader de fragmentos.

Implements moShader.

Definition at line 116 of file moShaderGLSL.cpp.

void moShaderGLSL::LoadVertShader ( const moText vert_filename)
virtual

Crea el shader de vértices a partir del código fuente en el archivo vert_filename.

Parameters
vert_filenamenombre del archivo con el código fuente del shader de vértices.

Implements moShader.

Definition at line 104 of file moShaderGLSL.cpp.

void moShaderGLSL::PrintFragShaderLog ( )

Imprime los mensajes generados al compilar el shader de fragmentos.

Definition at line 140 of file moShaderGLSL.cpp.

void moShaderGLSL::printInfoLog ( GLhandleARB  obj)
protected

Definition at line 250 of file moShaderGLSL.cpp.

void moShaderGLSL::PrintVertShaderLog ( )

Imprime los mensajes generados al compilar el shader de vértices.

Definition at line 135 of file moShaderGLSL.cpp.

void moShaderGLSL::StartShader ( )
virtual

Activa el shader.

Reimplemented from moShader.

Definition at line 123 of file moShaderGLSL.cpp.

void moShaderGLSL::StopShader ( )
virtual

Desactiva el shader.

Reimplemented from moShader.

Definition at line 129 of file moShaderGLSL.cpp.

Member Data Documentation

GLhandleARB moShaderGLSL::m_FragmentShader
protected

Definition at line 138 of file moShaderGLSL.h.

GLhandleARB moShaderGLSL::m_ProgramObject
protected

Definition at line 137 of file moShaderGLSL.h.

GLhandleARB moShaderGLSL::m_VertexShader
protected

Definition at line 139 of file moShaderGLSL.h.


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