libmoldeo (Moldeo 1.0 Core)  1.0
libmoldeo es el conjunto de objetos y funciones, que permiten ejecutar las operaciones básicas de la plataforma Moldeo, y que compone su núcleo.
 Todo Clases Namespaces Archivos Funciones Variables 'typedefs' Enumeraciones Valores de enumeraciones Amigas 'defines' Grupos Páginas
Referencia de la Clase moShaderabstract

#include <moShader.h>

Diagrama de herencias de moShader
moAbstract moShaderGLSL

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 CreateShader (const moText &vert_source, const moText &frag_source)=0
 
virtual void LoadVertShader (const moText &vert_filename)=0
 
virtual void LoadFragShader (const moText &frag_filename)=0
 
virtual void LoadShader (const moText &vert_filename, const moText &frag_filename)=0
 
virtual void StartShader ()
 
virtual void StopShader ()
 
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)
 
- Métodos públicos heredados desde moAbstract
 moAbstract ()
 
virtual ~moAbstract ()
 
MOboolean Initialized ()
 Pregunta si está inicializado. Más...
 

Atributos públicos

moConfig m_Config
 
- Atributos públicos heredados desde moAbstract
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 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
 

Otros miembros heredados

- Atributos públicos estáticos heredados desde moAbstract
static moDebugMODebug2 = new moDebug()
 Clase de impresión de errores para depuración. Más...
 
static moTextHeapMODebug = new moTextHeap()
 Lista de textos. Más...
 

Descripción detallada

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.

Documentación del constructor y destructor

moShader::moShader ( )

El constructor por defecto de la clase.

Definición en la línea 200 del archivo moShader.cpp.

moShader::~moShader ( )
virtual

El destructor por defecto de la clase.

Definición en la línea 209 del archivo moShader.cpp.

Documentación de las funciones miembro

virtual void moShader::compileFragShader ( const moText frag_source)
protectedpure virtual

Implementado en moShaderGLSL.

virtual void moShader::compileVertShader ( const moText vert_source)
protectedpure virtual

Implementado en moShaderGLSL.

virtual void moShader::CreateFragShader ( const moText frag_source)
pure virtual

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

Parámetros
frag_sourcecódigo fuente del shader de vértices.

Implementado en moShaderGLSL.

virtual void moShader::CreateShader ( const moText vert_source,
const moText frag_source 
)
pure virtual

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

Parámetros
vert_sourcecódigo fuente del shader de vértices.
frag_sourcecódigo fuente del shader de vértices.

Implementado en moShaderGLSL.

virtual void moShader::CreateVertShader ( const moText vert_source)
pure virtual

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

Parámetros
vert_sourcecódigo fuente del shader de vértices.

Implementado en moShaderGLSL.

void moShader::DrawGrid ( MOint  w,
MOint  h,
MOint  l 
)
inline

Dibuja la grilla asociada a este shader con ancho w y alto w, aplicando las capas hasta la número l.

Parámetros
wancho con el que se dibuja la grilla.
halto con el que se dibuja la grilla.
lnúmero de capas de textura a aplicar.

Definición en la línea 283 del archivo moShader.h.

MOboolean moShader::Finish ( )
virtual

Método de finalización.

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

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.

Devuelve
código de error.

Definición en la línea 248 del archivo moShader.cpp.

moTexturedGrid moShader::GetGrid ( )
inline

Devuelve el objeto de grilla 2D utilizado por este shader.

Devuelve
objeto de grilla 2D.

Definición en la línea 270 del archivo moShader.h.

moText moShader::GetName ( )
inline

Devuelve el nombre del shader.

Devuelve
nombre del shader.

Definición en la línea 259 del archivo moShader.h.

MOuint moShader::GetType ( )
inline

Devuelve el tipo de shader: MO_SHADER_GLSL o MO_SHADER_CG.

Devuelve
tipo de shader.

Definición en la línea 249 del archivo moShader.h.

MOboolean moShader::Init ( )
virtual

Método de inicialización.

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

Reimplementado de moAbstract.

Reimplementado en moShaderGLSL.

Definición en la línea 214 del archivo moShader.cpp.

virtual void moShader::LoadFragShader ( const moText frag_filename)
pure virtual

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

Parámetros
frag_filenamenombre del archivo con el código fuente del shader de fragmentos.

Implementado en moShaderGLSL.

virtual void moShader::LoadShader ( const moText vert_filename,
const moText frag_filename 
)
pure virtual

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

Parámetros
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.

Implementado en moShaderGLSL.

moText moShader::LoadShaderSource ( const moText p_fn)
protectedvirtual

Definición en la línea 253 del archivo moShader.cpp.

virtual void moShader::LoadVertShader ( const moText vert_filename)
pure virtual

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

Parámetros
vert_filenamenombre del archivo con el código fuente del shader de vértices.

Implementado en moShaderGLSL.

void moShader::SetGrid ( moTexturedGrid  p_grid)
inline

Establece el objeto de grilla 2D a utilizar por este shader.

Parámetros
m_gridnuevo objeto de grilla 2D.

Definición en la línea 275 del archivo moShader.h.

void moShader::SetName ( const moText p_name)
inline

Establece el nombre del shader.

Parámetros
p_namenuevo nombre del shader.

Definición en la línea 264 del archivo moShader.h.

void moShader::SetType ( MOuint  p_type)
inline

Establece el tipo de shader.

Parámetros
p_typenuevo tipo de shader.

Definición en la línea 254 del archivo moShader.h.

MOboolean moShader::ShaderActive ( )
virtual

Devuelve el estado del shader.

Devuelve
true si el shader está activo, false en caso contrario.

Definición en la línea 238 del archivo moShader.cpp.

void moShader::StartShader ( )
virtual

Activa el shader.

Reimplementado en moShaderGLSL.

Definición en la línea 228 del archivo moShader.cpp.

void moShader::StopShader ( )
virtual

Desactiva el shader.

Reimplementado en moShaderGLSL.

Definición en la línea 233 del archivo moShader.cpp.

MOint moShader::VertErrorCode ( )

Devuelve el código del último error ocurrido en el shader de vértices.

Devuelve
código de error.

Definición en la línea 243 del archivo moShader.cpp.

Documentación de los datos miembro

MOboolean moShader::m_Active
protected

Definición en la línea 294 del archivo moShader.h.

moConfig moShader::m_Config

Definición en la línea 286 del archivo moShader.h.

MOint moShader::m_FragErrorCode
protected

Definición en la línea 296 del archivo moShader.h.

moTexturedGrid moShader::m_grid
protected

Definición en la línea 292 del archivo moShader.h.

moText moShader::m_name
protected

Definición en la línea 290 del archivo moShader.h.

MOuint moShader::m_type
protected

Definición en la línea 289 del archivo moShader.h.

MOint moShader::m_VertErrorCode
protected

Definición en la línea 295 del archivo moShader.h.


La documentación para esta clase fue generada a partir de los siguientes ficheros: