diff options
author | Brian <[email protected]> | 2007-10-26 19:19:09 -0600 |
---|---|---|
committer | Brian <[email protected]> | 2007-10-26 19:19:51 -0600 |
commit | 8fed2466e4056668a76a87cf935b5fbff8ae15ca (patch) | |
tree | 81345e5b5ee66dc2dd299f5b9ce29314f2e52735 /src/mesa/shader/prog_print.c | |
parent | 789d248558061fe4d65f664d6770a12b90fa2e34 (diff) |
Re-implement GLSL texture sampler variables.
GLSL sampler variables indicate which texture unit to use for TEX instructions.
Previously, this was baked into the fragment/vertex program and couldn't be
readily changed once set.
Now, SamplerUnits[] array indicates which texture unit is to be used for
each sampler variable. These values are set with glUniform1i().
This is extra state that must be passed to the fragment/vertex program
executor at runtime.
Diffstat (limited to 'src/mesa/shader/prog_print.c')
-rw-r--r-- | src/mesa/shader/prog_print.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mesa/shader/prog_print.c b/src/mesa/shader/prog_print.c index e92837f739e..c421b1228bc 100644 --- a/src/mesa/shader/prog_print.c +++ b/src/mesa/shader/prog_print.c @@ -719,6 +719,8 @@ _mesa_print_program_opt(const struct gl_program *prog, void _mesa_print_program_parameters(GLcontext *ctx, const struct gl_program *prog) { + GLuint i; + _mesa_printf("InputsRead: 0x%x\n", prog->InputsRead); _mesa_printf("OutputsWritten: 0x%x\n", prog->OutputsWritten); _mesa_printf("NumInstructions=%d\n", prog->NumInstructions); @@ -726,6 +728,11 @@ _mesa_print_program_parameters(GLcontext *ctx, const struct gl_program *prog) _mesa_printf("NumParameters=%d\n", prog->NumParameters); _mesa_printf("NumAttributes=%d\n", prog->NumAttributes); _mesa_printf("NumAddressRegs=%d\n", prog->NumAddressRegs); + _mesa_printf("Samplers=[ "); + for (i = 0; i < MAX_SAMPLERS; i++) { + _mesa_printf("%d ", prog->SamplerUnits[i]); + } + _mesa_printf("]\n"); _mesa_load_state_parameters(ctx, prog->Parameters); |