mirror of
https://github.com/mupen64plus/mupen64plus-oldsvn.git
synced 2025-04-02 10:52:35 -04:00
79 lines
1.8 KiB
C
79 lines
1.8 KiB
C
#ifndef TEXTURE_ENV_COMBINE_H
|
|
#define TEXTURE_ENV_COMBINE_H
|
|
|
|
/*
|
|
** ATIX EXTENSIONS
|
|
*/
|
|
|
|
/*
|
|
** GL_ATIX_texture_env_route
|
|
**
|
|
** Support
|
|
** Rage 128 based : Not Supported
|
|
** Radeon 7xxx based : Supported
|
|
** Radeon 8xxx/9000 based : Supported
|
|
** Radeon 9500/9700 based : Supported
|
|
*/
|
|
#ifndef GL_ATIX_texture_env_route
|
|
#define GL_ATIX_texture_env_route 1
|
|
|
|
#define GL_SECONDARY_COLOR_ATIX 0x8747
|
|
#define GL_TEXTURE_OUTPUT_RGB_ATIX 0x8748
|
|
#define GL_TEXTURE_OUTPUT_ALPHA_ATIX 0x8749
|
|
|
|
#endif /* GL_ATIX_texture_env_route */
|
|
|
|
/*
|
|
** GL_ATIX_vertex_shader_output_point_size
|
|
**
|
|
** Support:
|
|
** Rage 128 based : Not Supported
|
|
** Radeon 7xxx based : Not Supported
|
|
** Radeon 8xxx/9000 based : Supported
|
|
** Radeon 9500/9700 based : Supported
|
|
*/
|
|
#ifndef GL_ATIX_vertex_shader_output_point_size
|
|
#define GL_ATIX_vertex_shader_output_point_size 1
|
|
|
|
#define GL_OUTPUT_POINT_SIZE_ATIX 0x610E
|
|
|
|
#endif /* GL_ATIX_vertex_shader_output_point_size */
|
|
|
|
struct TexEnvCombinerArg
|
|
{
|
|
GLenum source, operand;
|
|
};
|
|
|
|
struct TexEnvCombinerStage
|
|
{
|
|
WORD constant;
|
|
BOOL used;
|
|
GLenum combine;
|
|
TexEnvCombinerArg arg0, arg1, arg2;
|
|
WORD outputTexture;
|
|
};
|
|
|
|
struct TexEnvCombiner
|
|
{
|
|
BOOL usesT0, usesT1, usesNoise;
|
|
|
|
WORD usedUnits;
|
|
|
|
struct
|
|
{
|
|
WORD color, secondaryColor, alpha;
|
|
} vertex;
|
|
|
|
TexEnvCombinerStage color[8];
|
|
TexEnvCombinerStage alpha[8];
|
|
};
|
|
|
|
void Init_texture_env_combine();
|
|
TexEnvCombiner *Compile_texture_env_combine( Combiner *color, Combiner *alpha );
|
|
void Set_texture_env_combine( TexEnvCombiner *envCombiner );
|
|
void Update_texture_env_combine_Colors( TexEnvCombiner* );
|
|
void Uninit_texture_env_combine();
|
|
void BeginTextureUpdate_texture_env_combine();
|
|
void EndTextureUpdate_texture_env_combine();
|
|
#endif
|
|
|