summaryrefslogtreecommitdiff
path: root/src/mesa
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa')
-rw-r--r--src/mesa/main/texenvprogram.c55
1 files changed, 31 insertions, 24 deletions
diff --git a/src/mesa/main/texenvprogram.c b/src/mesa/main/texenvprogram.c
index b316c25809..5913957969 100644
--- a/src/mesa/main/texenvprogram.c
+++ b/src/mesa/main/texenvprogram.c
@@ -944,7 +944,7 @@ static GLboolean args_match( const struct state_key *key, GLuint unit )
{
GLuint i, numArgs = key->unit[unit].NumArgsRGB;
- for (i = 0 ; i < numArgs ; i++) {
+ for (i = 0; i < numArgs; i++) {
if (key->unit[unit].OptA[i].Source != key->unit[unit].OptRGB[i].Source)
return GL_FALSE;
@@ -1278,7 +1278,7 @@ static GLboolean load_texenv_source( struct texenv_fragment_program *p,
* Generate instructions for loading all texture source terms.
*/
static GLboolean
-load_texunit_sources( struct texenv_fragment_program *p, int unit )
+load_texunit_sources( struct texenv_fragment_program *p, GLuint unit )
{
const struct state_key *key = p->state;
GLuint i;
@@ -1298,7 +1298,7 @@ load_texunit_sources( struct texenv_fragment_program *p, int unit )
* Generate instructions for loading bump map textures.
*/
static GLboolean
-load_texunit_bumpmap( struct texenv_fragment_program *p, int unit )
+load_texunit_bumpmap( struct texenv_fragment_program *p, GLuint unit )
{
const struct state_key *key = p->state;
GLuint bumpedUnitNr = key->unit[unit].OptRGB[1].Source - SRC_TEXTURE0;
@@ -1314,17 +1314,20 @@ load_texunit_bumpmap( struct texenv_fragment_program *p, int unit )
texcDst = get_tex_temp( p );
p->texcoord_tex[bumpedUnitNr] = texcDst;
- /* apply rot matrix and add coords to be available in next phase */
- /* dest = (Arg0.xxxx * rotMat0 + Arg1) + (Arg0.yyyy * rotMat1) */
- /* note only 2 coords are affected the rest are left unchanged (mul by 0) */
+ /* Apply rot matrix and add coords to be available in next phase.
+ * dest = (Arg0.xxxx * rotMat0 + Arg1) + (Arg0.yyyy * rotMat1)
+ * note only 2 coords are affected the rest are left unchanged (mul by 0)
+ */
emit_arith( p, OPCODE_MAD, texcDst, WRITEMASK_XYZW, 0,
swizzle1(bumpMapRes, SWIZZLE_X), rotMat0, texcSrc );
emit_arith( p, OPCODE_MAD, texcDst, WRITEMASK_XYZW, 0,
swizzle1(bumpMapRes, SWIZZLE_Y), rotMat1, texcDst );
- /* move 0,0,0,1 into bumpmap src if someone (crossbar) is foolish
- enough to access this later, should optimize away */
- emit_arith( p, OPCODE_MOV, bumpMapRes, WRITEMASK_XYZW, 0, constdudvcolor, undef, undef );
+ /* Move 0,0,0,1 into bumpmap src if someone (crossbar) is foolish
+ * enough to access this later, should optimize away.
+ */
+ emit_arith( p, OPCODE_MOV, bumpMapRes, WRITEMASK_XYZW, 0,
+ constdudvcolor, undef, undef );
return GL_TRUE;
}
@@ -1351,17 +1354,17 @@ create_new_program(GLcontext *ctx, struct state_key *key,
*/
p.program->Base.Instructions = instBuffer;
p.program->Base.Target = GL_FRAGMENT_PROGRAM_ARB;
- p.program->Base.NumTexIndirections = 1;
+ p.program->Base.String = NULL;
+ p.program->Base.NumTexIndirections = 1; /* is this right? */
p.program->Base.NumTexInstructions = 0;
p.program->Base.NumAluInstructions = 0;
- p.program->Base.String = NULL;
- p.program->Base.NumInstructions =
- p.program->Base.NumTemporaries =
- p.program->Base.NumParameters =
- p.program->Base.NumAttributes = p.program->Base.NumAddressRegs = 0;
+ p.program->Base.NumInstructions = 0;
+ p.program->Base.NumTemporaries = 0;
+ p.program->Base.NumParameters = 0;
+ p.program->Base.NumAttributes = 0;
+ p.program->Base.NumAddressRegs = 0;
p.program->Base.Parameters = _mesa_new_parameter_list();
-
- p.program->Base.InputsRead = 0;
+ p.program->Base.InputsRead = 0x0;
p.program->Base.OutputsWritten = 1 << FRAG_RESULT_COLOR;
for (unit = 0; unit < ctx->Const.MaxTextureUnits; unit++) {
@@ -1378,10 +1381,12 @@ create_new_program(GLcontext *ctx, struct state_key *key,
release_temps(ctx, &p);
if (key->enabled_units) {
- GLboolean needbumpstage = GL_FALSE;
+ GLboolean needbumpstage = GL_FALSE;
+
/* Zeroth pass - bump map textures first */
- for (unit = 0 ; unit < ctx->Const.MaxTextureUnits ; unit++)
- if (key->unit[unit].enabled && key->unit[unit].ModeRGB == MODE_BUMP_ENVMAP_ATI) {
+ for (unit = 0; unit < ctx->Const.MaxTextureUnits; unit++)
+ if (key->unit[unit].enabled &&
+ key->unit[unit].ModeRGB == MODE_BUMP_ENVMAP_ATI) {
needbumpstage = GL_TRUE;
load_texunit_bumpmap( &p, unit );
}
@@ -1392,7 +1397,7 @@ create_new_program(GLcontext *ctx, struct state_key *key,
* all referenced texture sources and emit texld instructions
* for each:
*/
- for (unit = 0 ; unit < ctx->Const.MaxTextureUnits ; unit++)
+ for (unit = 0; unit < ctx->Const.MaxTextureUnits; unit++)
if (key->unit[unit].enabled) {
load_texunit_sources( &p, unit );
p.last_tex_stage = unit;
@@ -1400,7 +1405,7 @@ create_new_program(GLcontext *ctx, struct state_key *key,
/* Second pass - emit combine instructions to build final color:
*/
- for (unit = 0 ; unit < ctx->Const.MaxTextureUnits; unit++)
+ for (unit = 0; unit < ctx->Const.MaxTextureUnits; unit++)
if (key->unit[unit].enabled) {
p.src_previous = emit_texenv( &p, unit );
reserve_temp(&p, p.src_previous); /* don't re-use this temp reg */
@@ -1434,9 +1439,11 @@ create_new_program(GLcontext *ctx, struct state_key *key,
* a reduced value and not what is expected in FogOption
*/
p.program->FogOption = ctx->Fog.Mode;
- p.program->Base.InputsRead |= FRAG_BIT_FOGC; /* XXX new */
- } else
+ p.program->Base.InputsRead |= FRAG_BIT_FOGC;
+ }
+ else {
p.program->FogOption = GL_NONE;
+ }
if (p.program->Base.NumTexIndirections > ctx->Const.FragmentProgram.MaxTexIndirections)
program_error(&p, "Exceeded max nr indirect texture lookups");