Age | Commit message (Collapse) | Author |
|
Basically make cso hold the driver specific struct, while
managing the template.
|
|
Drivers can now create whatever they want from the state template. We
use cso_state object to store the template (necessary during lookups),
and the driver data. Convert blend state to the new semantics.
|
|
Create/Delete calls should be split since in create we'll be
compiling them so we want to know which one it is (vertex/fragment).
|
|
This is a step toward removing TGSI_ATTRIB_ tokens.
Basically, when translating Mesa programs to TGSI programs, pass in input and
output register re-maps, plus interpolation info.
There's some known breakage (cubemap.c) so more to be done...
|
|
|
|
state
|
|
Converting depth and stencil objects into a single state object
(d3d10 like) and making it immutable.
|
|
Replacing mesa's main hash with one that handles collisions, moving state_tracker
related caching to the state tracker to keep cso cache independent of it. Cleanups.
|
|
We want our state objects to be immutable, handled via the
create/bind/delete calls instead of struct propagation.
Only implementing the blend state to see how it would look like
and work.
|
|
|
|
Replace VF_ATTRIB_x with TGSI_ATTRIB_x
When converting mesa programs to TGSI programs, also convert the InputsRead
and OutputsWritten to a mask of TGSI_ATTRIB_ bits.
Still need to do conversion for vertex programs...
|
|
They're now totally independent of the actual shaders.
Also, implemented in terms of pipe_buffer_handles/objects.
|
|
trivial/readpixels.c works again.
|
|
Since they're implemented by drawing quadrilaterals (and go through vertex
transformation and viewport mapping) we don't have to invert Y coords.
|
|
new st_draw_vertices() utility used by glClear and glDrawPixels
|
|
|
|
|
|
|
|
Renamed pipe_fs_state to pipe_shader_state since it can be used for both
vertex and fragment shader info.
|
|
|
|
|
|
|
|
|
|
Remove surface ptr from gl_renderbuffer.
Use st_renderbuffer in most places.
More clean-up.
|
|
|
|
We need to do these initializations before initializing the Mesa context
because context init involves creating texture/program/etc objects.
|
|
|
|
pipe->clear() only used to clear whole buffers (no scissor) w/out masking.
Draw a colored quadrilateral in all other cases.
|
|
|
|
for glClear.
|
|
Also some minor clear fixes.
|
|
|
|
Still require the intelClear() call to flush batchbuffers. That will be
removed later...
|