Age | Commit message (Collapse) | Author |
|
|
|
This patch duplicates the softpipe fix seen in the preceeding commit.
|
|
|
|
|
|
Handle the remaining semantic names and indices.
Respect color interpolator when not flatshading.
|
|
Conflicts:
progs/demos/cubemap.c
src/gallium/drivers/softpipe/sp_tex_sample.c
src/gallium/drivers/softpipe/sp_texture.c
|
|
|
|
|
|
Everything now goes through the draw_vbuf handler, the same as
regular drivers.
|
|
Conflicts:
src/gallium/drivers/softpipe/sp_state_derived.c
src/gallium/drivers/softpipe/sp_state_sampler.c
src/gallium/drivers/softpipe/sp_tex_sample.c
src/gallium/drivers/softpipe/sp_tex_sample.h
src/gallium/drivers/softpipe/sp_tile_cache.c
|
|
The tile cache code now has no hard dependencies on softpipe.
|
|
Split into component pieces, stitch together at runtime using function
pointers. Make it possible to utilize the existing fastpaths as image-level
filters for generic mip-filtering routines.
Remove special case for rectangle filtering, as it can now be handled by
the 2d path.
As most of the mesa demo texturing was already covered by fast paths, its
harder to find examples of speedups, but tunnel gets a boost as mip-nearest
filtering is now able to access the img_2d_linear_wrap_POT functions
for sampling within a mipmap level.
|
|
Let eg. sp_get_samples_rect be hooked directly in as the tgsi sampler
routine.
Add a field to determine whether this is a vertex or fragment sampling
call, and massage parameters to match the tgsi call.
|
|
These do similar jobs but with largely disjoint code. Will want
to evolve them separately going forward.
|
|
All these fastpaths are examples of the types of things we'd code-generate
in a more sophisticated version of softpipe.
|
|
|
|
|
|
No performance gain yet, but the code is a bit cleaner.
|
|
The tile cache is a utility, it shouldn't know anything about the
entity which is making use of it (ie softpipe).
Remove softpipe parameter to all the tilecache function calls, and
also remove the need to keep a softpipe pointer in the sampler structs.
|
|
mesa allocates both frontface and pointcoord registers within the fog
coordinate register, by using swizzling. to make it cleaner and easier
for drivers we want each of them in its own register. so when doing
compilation from the mesa IR to tgsi allocate new registers for both
and add new semantics to the respective declarations.
|
|
Also, rename p_tile.[ch] to u_tile.[ch]
|
|
|
|
|
|
These are convenience fields. Otherwise, we have to check cbuf[0] or zsbuf
in various places.
|
|
|
|
attribs
Can't use the EMIT_ALL shortcut/optimization anymore because of passthrough mode.
|
|
vertex attribs
|
|
|
|
Use the shader semantic info from there, instead of from pipe_shader_state.
Carry this idea to draw module and other drivers...
|
|
|
|
New draw/prim stage: draw_aaline. When installed, lines are replaced by
textured quads to do antialiasing. The current user-defined fragment shader
is modified to do a texture fetch and modulate fragment alpha.
|
|
Update the Makefiles and includes for the new paths.
Note that there hasn't been no separation of the Makefiles yet, and make is
jumping all over the place. That will be taken care shortly. But for now, make
should work. It was tested with linux and linux-dri. Linux-cell and linux-llvm
might require some minor tweaks.
|
|
This is in a separate commit to ensure renames are properly preserved.
|