Age | Commit message (Collapse) | Author |
|
|
|
possible values: SATURATE_OFF, SATURATE_ZERO_ONE and SATURATE_PLUS_MINUS_ONE.
|
|
|
|
|
|
program->Id and program->RefCount fields were used and ATI fragment shaders
didn't have too much in common with ARB/NV vertex/fragment programs anyway.
|
|
arbprogparse.c and remove arbvertparse.[ch] and arbfragparse.[ch].
Clean up quite a bit of the arb parsing code.
Rewrite parser extension code to avoid a mess of string operations every
time the parser was used.
|
|
|
|
|
|
Added make_state_string() to produce a string from a GL state vector.
|
|
|
|
|
|
Instructions, InputsRead, OutputsWritten, and Parameters.
Also, added debug functions: _mesa_print_instruction(),
_mesa_print_program_parameters() and revamp _mesa_print_program().
|
|
instructions to the various internal tables. It does not add support for
them to the parser nor does it add support for them to the program
interpreter.
It also corrects some errors in the comments in program_instruction.h.
This patch breaks the instruction union in t_vb_arbprogram.h. The opcode
field in that union was only 6 bits. When there were only 59+3 instructions
that worked fine. However, this patch increases the base instruction count
to 69. This requires 7 bits. The problem is that increasing the opcode
width to 7 bits increases the size of instruction::rsw to 33 bits. I've
increased the size of the union to 64-bit, but this is just a temporary hack
(and probably breaks the build on some systems).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Based on patch by Ian (#4967) but also unify instruction opcodes.
|
|
|
|
|
|
|
|
arb_program struct.
|
|
|
|
|
|
|
|
|
|
- Renumber VERT_RESULT_* values so that they match the
numbers of the corresponding FRAG_ATTRIB_ values.
- Add ctx->VertexProgram._Current and FragmentProgram._Current
values which point to either the current client-supplied
program if enabled, or otherwise to the current mesa-internal
program. Thus this program is always the correct one for
the current state, providing that the mesa flags to turn on
automatic generation are enabled.
- Add callbacks to ctx->Driver.BindProgram() in texenvprogram.c
and t_vp_build.c so that the driver knows when the generated
program changes. This is cleaner than trying to code all the
possible _NEW_* flags into the driver, and more precise as well.
- Add a UsesKill flag to identify fragment programs with that
instruction, as these can require special treatment.
- Move the FRAG_OUTPUT values to mtypes.h, near to similar defn's.
|
|
temporaries, parameters, etc).
glGetProgramivARB() now returns all the right things.
Updated i915 and r300 code to initialize program native limits and
current program's native instruction/temporary/etc counts.
|
|
Now only use VERT_ATTRIB_* and FRAG_ATTRIB_* tokens instead of
hard-coded numbers.
Note: previous check-in did similarly for output register parsing.
|
|
Use new _mesa_init_fp/vp_instruction() function to initialize instructions.
|
|
Clean up the parse_extended_swizzle_mask() and parse_swizzle_mask() functions.
|
|
|
|
|
|
|
|
Specifically, don't attach a dummy program.
This change also fixes an occasional segfault.
Some code clean-ups. Use GLboolean instead of GLuint to return pass/fail.
|
|
|
|
|
|
1) change compilation on VMS to use IEEE floating points
2) one more problem with _mesa_sprintf solved
Modified Files:
Mesa/docs/README.VMS Mesa/progs/demos/descrip.mms
Mesa/progs/tests/descrip.mms Mesa/progs/util/descrip.mms
Mesa/progs/xdemos/descrip.mms Mesa/src/glu/mesa/descrip.mms
Mesa/src/glu/sgi/descrip.mms Mesa/src/glut/glx/descrip.mms
Mesa/src/mesa/array_cache/descrip.mms
Mesa/src/mesa/drivers/common/descrip.mms
Mesa/src/mesa/drivers/osmesa/descrip.mms
Mesa/src/mesa/drivers/x11/descrip.mms
Mesa/src/mesa/glapi/descrip.mms Mesa/src/mesa/main/descrip.mms
Mesa/src/mesa/main/texobj.c Mesa/src/mesa/math/descrip.mms
Mesa/src/mesa/shader/descrip.mms
Mesa/src/mesa/shader/grammar/descrip.mms
Mesa/src/mesa/shader/slang/descrip.mms
Mesa/src/mesa/swrast/descrip.mms
Mesa/src/mesa/swrast_setup/descrip.mms
Mesa/src/mesa/tnl/descrip.mms
----------------------------------------------------------------------
|
|
|
|
|
|
|
|
was refactored)
|
|
|
|
implementations with less than 6 texture units correctly.
|
|
when changing the global ati fragment shader constants.
|