![]() |
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.
|
#include <moShader.h>
Métodos públicos | |
moShader () | |
virtual | ~moShader () |
virtual MOboolean | Init () |
virtual MOboolean | Finish () |
virtual void | CreateVertShader (const moText &vert_source)=0 |
virtual void | CreateFragShader (const moText &frag_source)=0 |
virtual void | CreateGeomShader (const moText &geom_source)=0 |
virtual void | CreateTessShader (const moText &tess_source)=0 |
virtual void | CreateShader (const moText &vert_source, const moText &frag_source)=0 |
virtual void | CreateShader (const moText &vert_source, const moText &frag_source, const moText &geom_source)=0 |
virtual void | CreateShader (const moText &vert_source, const moText &frag_source, const moText &geom_source, const moText &tess_source)=0 |
virtual void | LoadVertShader (const moText &vert_filename)=0 |
virtual void | LoadFragShader (const moText &frag_filename)=0 |
virtual void | LoadGeomShader (const moText &geom_filename)=0 |
virtual void | LoadTessShader (const moText &tess_filename)=0 |
virtual void | LoadShader (const moText &vert_filename, const moText &frag_filename)=0 |
virtual void | LoadShader (const moText &vert_filename, const moText &frag_filename, const moText &geom_filename)=0 |
virtual void | LoadShader (const moText &vert_filename, const moText &frag_filename, const moText &geom_filename, const moText &tess_filename)=0 |
virtual void | StartShader () |
virtual void | StopShader () |
virtual MOboolean | ShaderActive () |
MOint | VertErrorCode () |
MOint | FragErrorCode () |
MOint | GeomErrorCode () |
MOint | TessErrorCode () |
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) |
![]() | |
moAbstract () | |
virtual | ~moAbstract () |
MOboolean | Initialized () |
Pregunta si está inicializado. Más... | |
Atributos públicos | |
moConfig | m_Config |
![]() | |
MOboolean | m_bInitialized |
Valor de inicialización. Más... | |
Métodos protegidos | |
virtual void | compileVertShader (const moText &vert_source)=0 |
virtual void | compileFragShader (const moText &frag_source)=0 |
virtual void | compileGeomShader (const moText &geom_source)=0 |
virtual void | compileTessShader (const moText &tess_source)=0 |
virtual moText | LoadShaderSource (const moText &p_fn) |
Atributos protegidos | |
MOuint | m_type |
moText | m_name |
moTexturedGrid | m_grid |
MOboolean | m_Active |
MOint | m_VertErrorCode |
MOint | m_FragErrorCode |
MOint | m_GeomErrorCode |
MOint | m_TessErrorCode |
Otros miembros heredados | |
![]() | |
static moDebug * | MODebug2 = new moDebug() |
Clase de impresión de errores para depuración. Más... | |
static moTextHeap * | MODebug = new moTextHeap() |
Lista de textos. Más... | |
Clase base para encapsular shaders de OpenGL. Un programa de shaders tiene tres etapas: el shader de vértices, donde las coordenadas 3D de los vértices son proyectadas a coordenadas homogéneas de pantalla, el shader de geometría, donde nuevos vértices y conectividades entre los mismos pueden ser definidos, y el shader de fragmentos, donde las primitivas geométricas, ya rasterizadas, son dibujadas en la panalla u otro búfer de escritura. Un programa de shader no necesita tener estas tres etapas definidas. Puede consistir sólo en un shader de fragmentos, con lo cual los estadios de vértices y geometría utilizan la funcionalidad por defecto ofrecida por OpenGL en el pipeline gráfico por defecto.
Definición en la línea 163 del archivo moShader.h.
moShader::moShader | ( | ) |
El constructor por defecto de la clase.
Definición en la línea 200 del archivo moShader.cpp.
|
virtual |
El destructor por defecto de la clase.
Definición en la línea 209 del archivo moShader.cpp.
|
protectedpure virtual |
Implementado en moShaderGLSL.
|
protectedpure virtual |
Implementado en moShaderGLSL.
|
protectedpure virtual |
Implementado en moShaderGLSL.
|
protectedpure virtual |
Implementado en moShaderGLSL.
|
pure virtual |
Crea el shader de fragmentos a partir del código fuente en frag_source.
frag_source | código fuente del shader de vértices. |
Implementado en moShaderGLSL.
|
pure virtual |
Crea el shader de geometría a partir del código fuente en geom_source.
geom_source | código fuente del shader de vértices. |
Implementado en moShaderGLSL.
|
pure virtual |
Crea los shaders de vértices y fragmentos a partir del código fuente en vert_source y frag_source.
vert_source | código fuente del shader de vértices. |
frag_source | código fuente del shader de vértices. |
Implementado en moShaderGLSL.
|
pure virtual |
Implementado en moShaderGLSL.
|
pure virtual |
Implementado en moShaderGLSL.
|
pure virtual |
Crea el shader de teselación a partir del código fuente en tess_source.
geom_source | código fuente del shader de vértices. |
Implementado en moShaderGLSL.
|
pure virtual |
Crea el shader de vértices a partir del código fuente en vert_source.
vert_source | código fuente del shader de vértices. |
Implementado en moShaderGLSL.
Dibuja la grilla asociada a este shader con ancho w y alto w, aplicando las capas hasta la número l.
w | ancho con el que se dibuja la grilla. |
h | alto con el que se dibuja la grilla. |
l | número de capas de textura a aplicar. |
Definición en la línea 317 del archivo moShader.h.
|
virtual |
Método de finalización.
Reimplementado de moAbstract.
Reimplementado en moShaderGLSL.
Definición en la línea 219 del archivo moShader.cpp.
MOint moShader::FragErrorCode | ( | ) |
Devuelve el código del último error ocurrido en el shader de fragmentos.
Definición en la línea 248 del archivo moShader.cpp.
MOint moShader::GeomErrorCode | ( | ) |
Devuelve el código del último error ocurrido en el shader de geometría.
Definición en la línea 253 del archivo moShader.cpp.
|
inline |
Devuelve el objeto de grilla 2D utilizado por este shader.
Definición en la línea 304 del archivo moShader.h.
|
inline |
Devuelve el nombre del shader.
Definición en la línea 293 del archivo moShader.h.
|
inline |
Devuelve el tipo de shader: MO_SHADER_GLSL o MO_SHADER_CG.
Definición en la línea 283 del archivo moShader.h.
|
virtual |
Método de inicialización.
Reimplementado de moAbstract.
Reimplementado en moShaderGLSL.
Definición en la línea 214 del archivo moShader.cpp.
|
pure virtual |
Crea el shader de fragmentos a partir del código fuente en el archivo frag_filename.
frag_filename | nombre del archivo con el código fuente del shader de fragmentos. |
Implementado en moShaderGLSL.
|
pure virtual |
Crea el shader de geometría a partir del código fuente en el archivo geom_filename.
geom_filename | nombre del archivo con el código fuente del shader de geometría. |
Implementado en moShaderGLSL.
|
pure virtual |
Crea los shaders de vértices y fragmentos a partir del código fuente en los archivos vert_filename y frag_filename.
vert_filename | nombre del archivo con el código fuente del shader de vértices. |
frag_filename | nombre del archivo con el código fuente del shader de fragmentos. |
Implementado en moShaderGLSL.
|
pure virtual |
Implementado en moShaderGLSL.
|
pure virtual |
Implementado en moShaderGLSL.
Definición en la línea 263 del archivo moShader.cpp.
|
pure virtual |
Crea el shader de teselación a partir del código fuente en el archivo tess_filename.
tess_filename | nombre del archivo con el código fuente del shader de teselación. |
Implementado en moShaderGLSL.
|
pure virtual |
Crea el shader de vértices a partir del código fuente en el archivo vert_filename.
vert_filename | nombre del archivo con el código fuente del shader de vértices. |
Implementado en moShaderGLSL.
|
inline |
Establece el objeto de grilla 2D a utilizar por este shader.
m_grid | nuevo objeto de grilla 2D. |
Definición en la línea 309 del archivo moShader.h.
|
inline |
Establece el nombre del shader.
p_name | nuevo nombre del shader. |
Definición en la línea 298 del archivo moShader.h.
|
inline |
Establece el tipo de shader.
p_type | nuevo tipo de shader. |
Definición en la línea 288 del archivo moShader.h.
|
virtual |
Devuelve el estado del shader.
Definición en la línea 238 del archivo moShader.cpp.
|
virtual |
Activa el shader.
Reimplementado en moShaderGLSL.
Definición en la línea 228 del archivo moShader.cpp.
|
virtual |
Desactiva el shader.
Reimplementado en moShaderGLSL.
Definición en la línea 233 del archivo moShader.cpp.
MOint moShader::TessErrorCode | ( | ) |
Devuelve el código del último error ocurrido en el shader de teselación.
Definición en la línea 258 del archivo moShader.cpp.
MOint moShader::VertErrorCode | ( | ) |
Devuelve el código del último error ocurrido en el shader de vértices.
Definición en la línea 243 del archivo moShader.cpp.
|
protected |
Definición en la línea 329 del archivo moShader.h.
moConfig moShader::m_Config |
Definición en la línea 321 del archivo moShader.h.
|
protected |
Definición en la línea 331 del archivo moShader.h.
|
protected |
Definición en la línea 332 del archivo moShader.h.
|
protected |
Definición en la línea 327 del archivo moShader.h.
|
protected |
Definición en la línea 325 del archivo moShader.h.
|
protected |
Definición en la línea 333 del archivo moShader.h.
|
protected |
Definición en la línea 324 del archivo moShader.h.
|
protected |
Definición en la línea 330 del archivo moShader.h.