Age | Commit message (Collapse) | Author |
|
drivers) can track when the sizes or strides of incoming VB->AttribPtr
arrays have changed.
|
|
- 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.
|
|
|
|
-Use 16-bit elts in vtxfmt_a path if possible
-Optimize VSF param uploading
-return in r300DepthMask looks suspicious, use r300Enable instead
-Dont use r300ResetHwState in invalidate state(disabled, missing hooks, possible instabilities)
|
|
|
|
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.
|
|
|
|
currently fails sometimes
|
|
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.
|
|
with seccolor on rv200 and r200.
Submitted by: sroland
|
|
|
|
|
|
fixing.
|
|
so that calls to glProgramStringARB() to specify a new program causes the
TNL-attached data to get recomputed.
|
|
|
|
|
|
|
|
|
|
tested with reflect on 32-bit.. not sure why depthHasSurface isn't needed
|
|
|
|
|
|
|
|
it, and guessing that the two remaining entries in the 3-bit values were the
new funcs. Tested with modified stencilwrap test. Also, remove the commented
fallback stuff -- more modification to stencilwrap suggests that those issues
were just from span readback, not stencil implementation.
|
|
stencilwrap reported many issues with various modes. Some of these were
complicated by the fact that spans are broken (Bug #1615), but some appear to be
real bugs. However, while spans remain broken, I found that visual results were
better by avoiding fallbacks rather than avoiding just a broken stencil
implementation. Note that this required changing the depth spans at 24+8bpp
into read-modify-write cycles. It would be nicer as a single write with
a mask, but the kernel span blits turn off masking.
Reviewed by: ajax
|
|
flipping the signs on two factors. While this contradicts the DDK, it matches
what r200 does, and it fixes the test.
|
|
Rage 128 stencil support.
|
|
|
|
|
|
|
|
|
|
Changes to current operation:
-Elts are no longer converted to 16-bit format
-Cube maps
|
|
|
|
back on. Tested using seccolor modified to use the blue channel instead of
green, since green stays in the same place across RGB/BGR mistakes. Also hook
in UpdateSpecular on COLOR_EXT change, which might have resulted in missing
statechanges before.
|
|
output from indirect rendering).
|
|
not respecting the coords (or perhaps interpreting them differently?) in my
testing. However, in the process it led to a fix of a secondary color handling
issue where it would be taken from the wrong offset, I believe, based off of
reading the r200 driver. Also add a minor tweak to save time in the
fog-but-not-specular case.
|