40 #ifndef _GLS_RENDER_EFFECT_H 
   41 #define _GLS_RENDER_EFFECT_H 
   54 #if( defined( GLSGEN_EXPORT_GLSADVANCEDMESH ) || defined( GLSGEN_IMPORT_GLSADVANCEDMESH ) || defined( GLS_EXPORT_GENERATED ) || defined( GLS_IMPORT_GENERATED ) ) \ 
   55     && defined( _MSC_VER ) 
   56 #    if defined( GLSGEN_EXPORT_GLSADVANCEDMESH ) || defined( GLS_EXPORT_GENERATED ) 
   57 #        define GLSGEN_GlsAdvancedMesh_EXPORT __declspec( dllexport ) 
   59 #        define GLSGEN_GlsAdvancedMesh_EXPORT __declspec( dllimport ) 
   62 #    define GLSGEN_GlsAdvancedMesh_EXPORT 
   71 class DistiAttribDict;
 
   73 typedef DynamicArray<int> ReferencedTextureArray;
 
   74 typedef DynamicArray<int> ReferencedMaterialArray;
 
   89         ATTRIB_POSITION  = 0x80000000,
 
  104     } AttributeSemanticEnum;
 
  123     virtual void AddRef()  = 0;
 
  124     virtual void Release() = 0;
 
  128     virtual unsigned int GlsRenderEffect_ClassID() 
const = 0;
 
  143             unsigned char textureRepeat    = 1,
 
  147             : _textureRepeat( textureRepeat )
 
  148             , _textureMap( textureMap )
 
  149             , _textureMagFilter( textureMagFilter )
 
  150             , _textureMinFilter( textureMinFilter )
 
  153 #if( ( GLS_VERSION_MAJOR == 4 && ( GLS_VERSION_MINOR == 1 || GLS_VERSION_MINOR == 0 ) ) || GLS_VERSION_MAJOR <= 3 ) 
  162         const TextureSettings&         textureSettings,
 
  163         float*                         viewToWorld3x3 
 
  178         const TextureSettings&         textureSettings,
 
  179         float*                         viewToWorld3x3, 
 
  180         unsigned int                   maxLightNum,
 
  181         unsigned int                   activeLightMask )
 
  185 #if !defined( GLES ) || defined( GLES20 ) 
  204     virtual const std::string& EffectTypeName() = 0;
 
  227     static GLSGEN_GlsAdvancedMesh_EXPORT 
unsigned int SetDebugMode( 
const char* modeName, 
bool value );
 
  231     static GLSGEN_GlsAdvancedMesh_EXPORT 
unsigned int RegisterNewClassID( 
const char* debugStr = NULL );
 
  239     typedef bool ( *DebugModeChangeCallback )( 
void* user, 
const char* modeName, 
bool value );
 
  247     static GLSGEN_GlsAdvancedMesh_EXPORT 
bool RegisterDebugModeChangeCallback( 
void* param, DebugModeChangeCallback func );
 
  255     static GLSGEN_GlsAdvancedMesh_EXPORT 
bool UnregisterDebugModeChangeCallback( 
void* param, DebugModeChangeCallback func );
 
virtual void GetReferencedMaterials(ReferencedMaterialArray &referencedMaterials)
Definition: gls_render_effect.h:218
The disti::Material class. 
The disti::DynamicArray class. A templated array of objects capable of dynamically growing...
unsigned char _textureMap
Definition: gls_render_effect.h:137
virtual GlsRenderEffect * Clone() const  =0
virtual GLint GetVertexAttribIndexForSemantic(int semanticEnum)=0
virtual int Compare(const GlsRenderEffect *other) const  =0
bool Equals(const GlsRenderEffect *other) const 
Definition: gls_render_effect.h:200
Definition: gls_render_effect.h:81
unsigned char _textureRepeat
Definition: gls_render_effect.h:136
The disti::GlsStateManager factory class. Creates an instance of a state manager that manages the GL ...
virtual void GetReferencedTextures(ReferencedTextureArray &referencedTextures)
Definition: gls_render_effect.h:221
GL Studio Enumerations and constants. 
Definition: display_types.h:64
Definition: disti_metadata.h:667
Used for matching version of libraries and headers. 
virtual void SetupEffect(DynamicArray< Material, false > &materialPalette, TexturePalette *texturePalette, const TextureSettings &textureSettings, float *viewToWorld3x3)=0
Definition: display_types.h:71
unsigned char _textureMagFilter
Definition: gls_render_effect.h:138
Definition: texture_palette.h:143
unsigned char _textureMinFilter
Definition: gls_render_effect.h:139
Definition: gls_render_effect.h:115
Definition: gls_render_effect.h:133
Definition: bmpimage.h:46
virtual void CleanupEffect()=0
Remove the effect trom the OpenGL state.