Age | Commit message (Collapse) | Author |
|
|
|
We can simplify this now that we no longer have any dynamic atoms.
|
|
Just use the new _NEW_PROGRAM_CONSTANTS flag instead.
|
|
Use _mesa_malloc(), _mesa_free(), etc everywhere, not malloc(), free(), etc.
Still using CALLOC_STRUCT() at this point.
|
|
Some of the headers in src/mesa/main have pretty common names which
easily conflict with third-party code, e.g. config.h
|
|
Before, we were sometimes rendering into a stale texture because
st_finalize_texture() would discard the old texture and create a new one.
Moved st_update_framebuffer atom after texture validation so that we
can create a new renderbuffer surface if the texture changes.
Also, split texture validation into two parts: finalize_textures and
update_textures. Do finalize_textures first to avoid getting into the
situtation where we're doing a pipe->surface_copy() mid-way through
state validation.
Some debug code still in place, but disabled...
|
|
_NEW_PACKUNPACK state
|
|
The bitmap cache attempts to accumulate a series of glBitmap calls in a
buffer to effectively render a whole bunch of bitmaps at once.
The cache can be disabled, if needed, by setting UseBitmapCache=GL_FALSE.
|
|
|
|
|
|
|
|
|
|
proper linking.
Previously, programs were translated independently during validation.
The problem is the translation to TGSI format, which packs shader
input/outputs into continuous slots, depends on which vertex program is
being paired with which fragment shader. Now, we look at the outputs
of the vertex program in conjunction with the inputs of the fragment shader
to be sure the attributes match up correctly.
The new 'linked_program_pair' class keeps track of the associations
between vertex and fragment shaders. It's also the place where the TGSI
tokens are kept since they're no longer per-program state but per-linkage.
Still a few loose ends, like implementing some kind of hash/lookup table
for linked_program_pairs.
|
|
|
|
state
|
|
Converting depth and stencil objects into a single state object
(d3d10 like) and making it immutable.
|
|
|
|
|
|
|
|
|
|
Not sure the generated program looks correct though...
|
|
|
|
|
|
|
|
|
|
|
|
We should be able to render to any depth/format of X window now.
|
|
|
|
|
|
softpipe/state_tracker --> state_tracker/
softpipe/ --> pipe/
softpipe/generic --> pipe/softpipe/
I don't think pipe is a great name, but I disliked all the others too.
Luckily it's fairly easy to rename with git, so this can be revisited
later.
|