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.
Referencia de la Clase moTextureFilter

#include <moTextureFilter.h>

Diagrama de herencias de moTextureFilter
Inheritance graph
Diagrama de colaboración para moTextureFilter:
Collaboration graph

Métodos públicos

 moTextureFilter ()
 
virtual ~moTextureFilter ()
 
virtual MOboolean Init (moGLManager *p_glman, moRenderManager *p_renderman, moTextureArray &p_src_tex, moTextureArray &p_dest_tex, moShader *p_shader, const moTextFilterParam &p_params)
 
virtual MOboolean Finish ()
 
void Apply (MOuint p_i, MOfloat p_fade, const moTextFilterParam &p_params)
 
void Apply (MOuint p_i)
 
void Apply (MOfloat p_cycle, MOfloat p_fade, const moTextFilterParam &p_params)
 
void Apply (MOfloat p_cycle)
 
void Apply (moTempo *p_tempo, MOfloat p_fade, const moTextFilterParam &p_params)
 
void Apply (moTempo *p_tempo)
 
void Apply (moMoldeoObject *p_src_mob, MOfloat p_fade, const moTextFilterParam &p_params)
 
void Apply (moMoldeoObject *p_src_mob, moTempo *p_tempo, MOfloat p_fade, const moTextFilterParam &p_params)
 
void Apply (moMoldeoObject *p_src_mob, moTempo *p_tempo)
 
void Apply (moMoldeoObject *p_src_mob)
 
moTextureIndexGetSrcTex ()
 
moTextureIndexGetDestTex ()
 
moShaderGetShader ()
 
void CheckDestTexAttachStatus ()
 
void SetTextureFilterLabelName (moText p_text)
 
moText GetTextureFilterLabelName ()
 
const moTextFilterParamGetTextFilterParam ()
 
- Métodos públicos heredados desde moAbstract
 moAbstract ()
 
virtual ~moAbstract ()
 
virtual MOboolean Init ()
 Inicializa el objeto. Más...
 
MOboolean Initialized ()
 Pregunta si está inicializado. Más...
 

Métodos protegidos

void SetupShader (MOint w, MOint h, moTempo *p_tempo, MOfloat p_fade, const moTextFilterParam &p_params, moMoldeoObject *p_src_object=NULL)
 
void SetGLConf (MOint w, MOint h)
 
void RestoreGLConf ()
 
void BindDestFBO ()
 
void UnbindDestFBO ()
 
void BindSrcTex (MOuint p_i)
 
void BindSrcTex (MOfloat p_cycle)
 
void BindSrcTex (moTempo *p_tempo)
 
void BindSrcTex (moMoldeoObject *p_mob)
 
void UnbindSrcTex ()
 
void RenderTexQuad (MOint w, MOint h)
 

Atributos protegidos

moShaderm_shader
 
moRenderManagerm_renderman
 
moGLManagerm_glman
 
moText m_TextureFilterLabelName
 
GLint m_src_tex_unit [MO_MAX_TEXTURE_UNITS]
 
GLint m_src_tex_offset [MO_MAX_TEXTURE_UNITS]
 
GLint m_tempo_angle
 
GLint m_tempo_dt
 
GLint m_tempo_syncro
 
GLint m_tempo_delta
 
GLint m_tempo_ticks
 
GLint m_fade_const
 
GLint m_dest_tex_size
 
GLint m_random_uniform
 
int m_uniform_idx
 
int m_uniform_variables_idx [MAX_UNIFORM_VARS]
 idx of uniform parameters variables in moMoldeoObject Más...
 
moTextFilterParam m_DefParams
 idx of uniform variables in shader code moShader Más...
 
moTextureIndex m_src_tex
 
moTextureIndex m_dest_tex
 
GLboolean m_blend_on
 
GLint m_poly_mode
 
GLenum m_draw_buffers [MO_MAX_COLOR_ATTACHMENTS_EXT]
 
MOboolean m_use_screen_tex
 
MOboolean m_reattach_dest_tex
 

Otros miembros heredados

- Atributos públicos heredados desde moAbstract
MOboolean m_bInitialized
 Valor de inicialización. Más...
 
- 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

Esta clase define un filtro 2D para aplicar en texturas. Un filtro es b�sicamente un programa de shader (escrito en CG o GLSL) con un conjunto de predefinido de par�metros uniformes y una grilla 2D donde las texturas fuente son mapeadas. Los puntos de la grilla 2D pueden ser modificados en el estadio de v�rtices del filtro, permitiendo distorsiones arbitrarias en la forma de la texturas.

Definición en la línea 156 del archivo moTextureFilter.h.

Documentación del constructor y destructor

◆ moTextureFilter()

moTextureFilter::moTextureFilter ( )

El constructor por defecto de la clase.

Definición en la línea 493 del archivo moTextureFilter.cpp.

◆ ~moTextureFilter()

virtual moTextureFilter::~moTextureFilter ( )
inlinevirtual

El destructor por defecto de la clase.

Definición en la línea 166 del archivo moTextureFilter.h.

Gráfico de llamadas para esta función:

Documentación de las funciones miembro

◆ Apply() [1/10]

void moTextureFilter::Apply ( MOuint  p_i,
MOfloat  p_fade,
const moTextFilterParam p_params 
)

Aplica el filtro sobre las texturas de or�gen y escribiendo el resutlado en las texturas de destino.

Parámetros
p_icuadro a utilizar en las texturas de or�gen (en el caso de que sean animadas).
p_fadeconstante de "fading" utilizada para mezclar el resultado del filtro.
p_paramspar�metros del filtro.

Definición en la línea 643 del archivo moTextureFilter.cpp.

Gráfico de llamadas a esta función:

◆ Apply() [2/10]

void moTextureFilter::Apply ( MOuint  p_i)

Definición en la línea 638 del archivo moTextureFilter.cpp.

◆ Apply() [3/10]

void moTextureFilter::Apply ( MOfloat  p_cycle,
MOfloat  p_fade,
const moTextFilterParam p_params 
)

Aplica el filtro sobre las texturas de or�gen y escribiendo el resutlado en las texturas de destino.

Parámetros
p_cyclefracci�n del ciclo entre 0.0 y 1.0 a utilizar en las texturas de or�gen (en el caso de que sean animadas).
p_fadeconstante de "fading" utilizada para mezclar el resultado del filtro.
p_paramspar�metros del filtro.

Definición en la línea 674 del archivo moTextureFilter.cpp.

◆ Apply() [4/10]

void moTextureFilter::Apply ( MOfloat  p_cycle)

Definición en la línea 669 del archivo moTextureFilter.cpp.

◆ Apply() [5/10]

void moTextureFilter::Apply ( moTempo p_tempo,
MOfloat  p_fade,
const moTextFilterParam p_params 
)

Aplica el filtro sobre las texturas de or�gen y escribiendo el resutlado en las texturas de destino.

Parámetros
p_tempotempo a utilizar en las texturas de or�gen (en el caso de que sean animadas).
p_fadeconstante de "fading" utilizada para mezclar el resultado del filtro.
p_paramspar�metros del filtro.

Definición en la línea 705 del archivo moTextureFilter.cpp.

◆ Apply() [6/10]

void moTextureFilter::Apply ( moTempo p_tempo)

Definición en la línea 700 del archivo moTextureFilter.cpp.

◆ Apply() [7/10]

void moTextureFilter::Apply ( moMoldeoObject p_src_mob,
MOfloat  p_fade,
const moTextFilterParam p_params 
)

Definición en la línea 767 del archivo moTextureFilter.cpp.

◆ Apply() [8/10]

void moTextureFilter::Apply ( moMoldeoObject p_src_mob,
moTempo p_tempo,
MOfloat  p_fade,
const moTextFilterParam p_params 
)

Definición en la línea 740 del archivo moTextureFilter.cpp.

◆ Apply() [9/10]

void moTextureFilter::Apply ( moMoldeoObject p_src_mob,
moTempo p_tempo 
)

Definición en la línea 735 del archivo moTextureFilter.cpp.

◆ Apply() [10/10]

void moTextureFilter::Apply ( moMoldeoObject p_src_mob)

Definición en la línea 730 del archivo moTextureFilter.cpp.

◆ BindDestFBO()

void moTextureFilter::BindDestFBO ( )
protected

Definición en la línea 949 del archivo moTextureFilter.cpp.

Gráfico de llamadas para esta función:

◆ BindSrcTex() [1/4]

void moTextureFilter::BindSrcTex ( MOuint  p_i)
protected

Definición en la línea 989 del archivo moTextureFilter.cpp.

◆ BindSrcTex() [2/4]

void moTextureFilter::BindSrcTex ( MOfloat  p_cycle)
protected

Definición en la línea 999 del archivo moTextureFilter.cpp.

◆ BindSrcTex() [3/4]

void moTextureFilter::BindSrcTex ( moTempo p_tempo)
protected

Definición en la línea 1009 del archivo moTextureFilter.cpp.

◆ BindSrcTex() [4/4]

void moTextureFilter::BindSrcTex ( moMoldeoObject p_mob)
protected

Definición en la línea 1019 del archivo moTextureFilter.cpp.

Gráfico de llamadas para esta función:

◆ CheckDestTexAttachStatus()

void moTextureFilter::CheckDestTexAttachStatus ( )

Verifica que todas las texturas de destino est�n asociadas a lo b�fers de color del mismo FBO. En caso contrario, las mismas ser�n re-asociadas (utilizando el FBO de la primera textura de destino) en el momento de aplicar el filtro.

Definición en la línea 1058 del archivo moTextureFilter.cpp.

◆ Finish()

MOboolean moTextureFilter::Finish ( )
virtual

M�todo de finalizaci�n.

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

Reimplementado de moAbstract.

Definición en la línea 628 del archivo moTextureFilter.cpp.

◆ GetDestTex()

moTextureIndex* moTextureFilter::GetDestTex ( )
inline

Devuelve el puntero a la lista de texturas de destino.

Devuelve
puntero a la lista de texturas de destino.

Definición en la línea 225 del archivo moTextureFilter.h.

Gráfico de llamadas a esta función:

◆ GetShader()

moShader* moTextureFilter::GetShader ( )
inline

Definición en la línea 227 del archivo moTextureFilter.h.

◆ GetSrcTex()

moTextureIndex* moTextureFilter::GetSrcTex ( )
inline

Devuelve el puntero a la lista de texturas de or�gen.

Devuelve
puntero a la lista de texturas de or�gen.

Definición en la línea 220 del archivo moTextureFilter.h.

Gráfico de llamadas a esta función:

◆ GetTextFilterParam()

const moTextFilterParam& moTextureFilter::GetTextFilterParam ( )
inline

Definición en la línea 245 del archivo moTextureFilter.h.

Gráfico de llamadas a esta función:

◆ GetTextureFilterLabelName()

moText moTextureFilter::GetTextureFilterLabelName ( )
inline

Definición en la línea 241 del archivo moTextureFilter.h.

Gráfico de llamadas a esta función:

◆ Init()

MOboolean moTextureFilter::Init ( moGLManager p_glman,
moRenderManager p_renderman,
moTextureArray &  p_src_tex,
moTextureArray &  p_dest_tex,
moShader p_shader,
const moTextFilterParam p_params 
)
virtual

M�todo de inicializaci�n de la grilla.

Parámetros
p_glmanpuntero al administrador de OpenGL.
p_rendermanpuntero al administrador de render.
p_src_texreferencia a la lista de texturas de or�gen.
p_dest_texreferencia a la lista de texturas de destino.
p_shaderpuntero al programa de shader que define el filtro.
p_paramspuntero al objeto de par�metros a utilizar en este filtro.
Devuelve
true si la operaci�n fue exitosa, false en caso contrario.

Definición en la línea 502 del archivo moTextureFilter.cpp.

Gráfico de llamadas para esta función:
Gráfico de llamadas a esta función:

◆ RenderTexQuad()

void moTextureFilter::RenderTexQuad ( MOint  w,
MOint  h 
)
protected

◆ RestoreGLConf()

void moTextureFilter::RestoreGLConf ( )
protected

Definición en la línea 939 del archivo moTextureFilter.cpp.

◆ SetGLConf()

void moTextureFilter::SetGLConf ( MOint  w,
MOint  h 
)
protected

Definición en la línea 925 del archivo moTextureFilter.cpp.

◆ SetTextureFilterLabelName()

void moTextureFilter::SetTextureFilterLabelName ( moText  p_text)
inline

Definición en la línea 238 del archivo moTextureFilter.h.

Gráfico de llamadas a esta función:

◆ SetupShader()

void moTextureFilter::SetupShader ( MOint  w,
MOint  h,
moTempo p_tempo,
MOfloat  p_fade,
const moTextFilterParam p_params,
moMoldeoObject p_src_object = NULL 
)
protected

TODO: load and evaluate each parameter of m_shader->config using also p_src_object as parameters!!!

TODO: load and evaluate each parameter of m_shader->config using also p_src_object as parameters!!!

        if (uniform_var_type=="FLOAT") {
          float p_float = 0.0;
          int paramidx = p_src_object->GetConfig()->GetParamIndex(uniform_var_name);
          if (paramidx>-1) {
            p_float = p_src_object->GetConfig()->Eval( moParamReference(paramidx)  );
          } else {
            int inletidx = p_src_object->GetInletIndex(uniform_var_name);
            if (inletidx>-1) {
              p_float = p_src_object->GetInlets()->Get(inletidx)->GetData()->Float();
            }
          }
          glUniform1fARB( m_uniform_variables_idx[u], p_float );

MODebug2->Message("Assigning FLOAT:" + FloatToStr(p_float)); } else if (uniform_var_type=="INT") { float p_int = 0; int paramidx = p_src_object->GetConfig()->GetParamIndex(uniform_var_name); if (paramidx>-1) { p_int = p_src_object->GetConfig()->Int( moParamReference(paramidx) ); } else { int inletidx = p_src_object->GetInletIndex(uniform_var_name); if (inletidx>-1) { p_int = p_src_object->GetInlets()->Get(inletidx)->GetData()->Int(); } } glUniform1iARB( m_uniform_variables_idx[u], p_int ); MODebug2->Message("Assigning FLOAT:" + FloatToStr(p_float)); }

Definición en la línea 774 del archivo moTextureFilter.cpp.

Gráfico de llamadas para esta función:

◆ UnbindDestFBO()

void moTextureFilter::UnbindDestFBO ( )
protected

Definición en la línea 983 del archivo moTextureFilter.cpp.

Gráfico de llamadas para esta función:

◆ UnbindSrcTex()

void moTextureFilter::UnbindSrcTex ( )
protected

Definición en la línea 1049 del archivo moTextureFilter.cpp.

Documentación de los datos miembro

◆ m_blend_on

GLboolean moTextureFilter::m_blend_on
protected

Definición en la línea 279 del archivo moTextureFilter.h.

◆ m_DefParams

moTextFilterParam moTextureFilter::m_DefParams
protected

idx of uniform variables in shader code moShader

Definición en la línea 273 del archivo moTextureFilter.h.

◆ m_dest_tex

moTextureIndex moTextureFilter::m_dest_tex
protected

Definición en la línea 277 del archivo moTextureFilter.h.

◆ m_dest_tex_size

GLint moTextureFilter::m_dest_tex_size
protected

Definición en la línea 265 del archivo moTextureFilter.h.

◆ m_draw_buffers

GLenum moTextureFilter::m_draw_buffers[MO_MAX_COLOR_ATTACHMENTS_EXT]
protected

Definición en la línea 281 del archivo moTextureFilter.h.

◆ m_fade_const

GLint moTextureFilter::m_fade_const
protected

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

◆ m_glman

moGLManager* moTextureFilter::m_glman
protected

Definición en la línea 252 del archivo moTextureFilter.h.

◆ m_poly_mode

GLint moTextureFilter::m_poly_mode
protected

Definición en la línea 280 del archivo moTextureFilter.h.

◆ m_random_uniform

GLint moTextureFilter::m_random_uniform
protected

Definición en la línea 266 del archivo moTextureFilter.h.

◆ m_reattach_dest_tex

MOboolean moTextureFilter::m_reattach_dest_tex
protected

Definición en la línea 284 del archivo moTextureFilter.h.

◆ m_renderman

moRenderManager* moTextureFilter::m_renderman
protected

Definición en la línea 251 del archivo moTextureFilter.h.

◆ m_shader

moShader* moTextureFilter::m_shader
protected

Definición en la línea 250 del archivo moTextureFilter.h.

◆ m_src_tex

moTextureIndex moTextureFilter::m_src_tex
protected

Definición en la línea 276 del archivo moTextureFilter.h.

◆ m_src_tex_offset

GLint moTextureFilter::m_src_tex_offset[MO_MAX_TEXTURE_UNITS]
protected

Definición en la línea 258 del archivo moTextureFilter.h.

◆ m_src_tex_unit

GLint moTextureFilter::m_src_tex_unit[MO_MAX_TEXTURE_UNITS]
protected

Definición en la línea 257 del archivo moTextureFilter.h.

◆ m_tempo_angle

GLint moTextureFilter::m_tempo_angle
protected

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

◆ m_tempo_delta

GLint moTextureFilter::m_tempo_delta
protected

Definición en la línea 262 del archivo moTextureFilter.h.

◆ m_tempo_dt

GLint moTextureFilter::m_tempo_dt
protected

Definición en la línea 260 del archivo moTextureFilter.h.

◆ m_tempo_syncro

GLint moTextureFilter::m_tempo_syncro
protected

Definición en la línea 261 del archivo moTextureFilter.h.

◆ m_tempo_ticks

GLint moTextureFilter::m_tempo_ticks
protected

Definición en la línea 263 del archivo moTextureFilter.h.

◆ m_TextureFilterLabelName

moText moTextureFilter::m_TextureFilterLabelName
protected

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

◆ m_uniform_idx

int moTextureFilter::m_uniform_idx
protected

Definición en la línea 269 del archivo moTextureFilter.h.

◆ m_uniform_variables_idx

int moTextureFilter::m_uniform_variables_idx[MAX_UNIFORM_VARS]
protected

idx of uniform parameters variables in moMoldeoObject

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

◆ m_use_screen_tex

MOboolean moTextureFilter::m_use_screen_tex
protected

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


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