| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Remove/disable the attrib/slot mapping arrays in a few places.
Work in progress...
|
|
|
|
| |
state constant state object semantics.
|
| |
|
|
|
|
|
| |
Allow driver custom allocation within cached objects. The shaders
are currently twiced (by cso layer and by the program itself).
|
|
|
|
|
|
|
|
| |
TGSI_ATTRIB_x tokens still present and used in a few places.
Expanded set of TGSI_SEMANTIC_x tokens for describing the meaning
of inputs/outputs. These tokens are in a crude state ATM.
Lots of #if 0 / disabled code to be removed yet, etc...
Softpipe and i915 drivers should be in working condition but not heavily tested.
|
|
|
|
|
|
| |
cso already allocated the template for us. Returning 0 means
we have no driver specific representation and just want
the template on the bind.
|
|
|
|
|
| |
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...
|
|
|
|
|
|
|
|
|
|
| |
In mesa_to_tgsi.c, use TGSI_INTERPOLATE_PERSPECTIVE by default (to match
post-transform vertex info convention). More to be done there...
In sp_quad_fs.c, interpolate W in addition to Z. This fixes the divide
by zero happening in perspective_interpolation() tgsi_exec.c
As it was, we were only getting perspective correction of texture coords
used by the TGSI_TEX instruction since it does a homogeneous divide.
Other coords/varyings were incorrect.
|
| |
|
| |
|
| |
|
|
|
|
| |
state
|
|
|
|
|
| |
Converting depth and stencil objects into a single state object
(d3d10 like) and making it immutable.
|
|
|
|
|
|
| |
The const is there to enforce the immutable state of the object,
which is in reality owned by the pipe so just cast away the
constness.
|
|
|
|
| |
Switch the sample to be an immutable state object.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
This is already handled by the semanics of map(), etc.
|
|
|
|
|
|
| |
This replaces the temporary occlusion counter functions we had before.
Added new ctx->Driver.WaitQuery() function which should block until the result is ready.
Sketch out some code for vertex transformation feedback counters.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
A few functions which were basically duplicated between softpipe and the
i915 driver are now re-used:
draw_emit_vertex_attr()
draw_compute_vertex_size()
|
|
|
|
|
| |
Added a new draw_set_twoside_attributes() function for specifying which
vertex attributes are to be copied/replaced when a polygon is back-facing.
|
| |
|
|
|
|
|
|
|
| |
to cpy.
One less dependency on the TGSI_ATTRIB_x flags.
This requires setting the vertex_info->interp_mode[] values in the i915 driver and passing them to draw_set_vertex_attributes().
|
|
|
|
|
|
|
| |
The code is all in place, but mostly disabled for now:
In t_vp_build.c, write the VERT_RESULT_PSIZE register
In sp_state_derived.c, need to emit vertex point size if drawing points.
In setup_point() use the point size from the vertex.
|
| |
|
|
|
|
| |
replace PIPE_FORMAT_U_L8_A8 with PIPE_FORMAT_U_A8_L8
|
| |
|
| |
|
|
|
|
|
| |
Fix softpipe vertex attribute setup.
Also, update vs constants when the projection matrix changes (fixes samples/prim.c)
|
|
|
|
|
|
|
| |
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...
|
|
|
|
|
| |
Basic i915 2D texturing seems to work now.
The vertex format is determined from the current fragment shader.
|
|
|
|
| |
This was causing trouble for the i915 driver.
|
|
|
|
|
| |
They're now totally independent of the actual shaders.
Also, implemented in terms of pipe_buffer_handles/objects.
|
| |
|
|
|
|
|
|
|
| |
Creates a new pipe driver that feeds commands to either a hardware or
software pipe depending on fallback state.
Untested concept checkpoint. At this point it compiles.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
new st_draw_vertices() utility used by glClear and glDrawPixels
|
| |
|
| |
|
| |
|