summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/softpipe
AgeCommit message (Collapse)Author
2010-06-08gallium: make draw auto work and add relevant caps and docsZack Rusin
2010-06-08gallium: add interface for DrawAuto and implement it in softpipeZack Rusin
2010-06-08gallium: a lot more complete implementation of stream outputZack Rusin
interface wise we have everything needed by d3d10 and gl transform feedback. the draw module misses implementation of some corner cases (e.g. when stream output wants different number of components per output than normal rendering paths)
2010-06-08gallium: basic and initial implementation of the stream output interfaceZack Rusin
aka transform feedback
2010-06-07softpipe: use util_clear_render_target/depth_stencil fallbacksRoland Scheidegger
2010-06-07softpipe: remove assert on setting constbufs greater than zeroKeith Whitwell
2010-06-05mesa/st: add support for EXT_texture_swizzle.Dave Airlie
This passes on r300g, the only bit I'm not really sure about is the handling of the sampler_view in st_atom_texture.c, I unreference it there if the swizzle value changes and I also have to create a new set of functions to create a new one since the u_sampler.c ones don't handle swizzle so much. adds r300g + softpipe enables, I think other drivers could pass easily enough. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-06-03Merge branch 'gallium-newclear'Roland Scheidegger
Conflicts: src/gallium/state_trackers/python/p_context.i
2010-05-29softpipe: adapt to clear interface changesRoland Scheidegger
2010-05-28softpipe: add PIPE_BUFFER to assertionBrian Paul
Fixes regression from commit f2e05acac931889e0820e1cc5d7ea810048a6b5f.
2010-05-21Merge branch 'gallium-msaa'Roland Scheidegger
Conflicts: src/mesa/state_tracker/st_gen_mipmap.c src/mesa/state_tracker/st_texture.c
2010-05-21Merge branch 'gallium-front-ccw'Keith Whitwell
2010-05-18gallium: implement set_sample_mask() in all driversRoland Scheidegger
prevents segfault when state trackers try to set default mask. Other option would be to make this required only for drivers supporting multisampling, but this seems more clean. Only dummy implementations (for normal drivers) provided (no driver supports multisampling yet neither).
2010-05-17softpipe: adapt to interface changesRoland Scheidegger
2010-05-14softpipe: restore culling codeKeith Whitwell
2010-05-14gallium: convert rasterizer state to use gl-style front/back conceptsKeith Whitwell
Use front/back instead of cw/ccw throughout. Also, use offset_point/line/fill instead of offset_cw/ccw. Brings gallium representation of this state into line with its main user, and also what turns out to be the most common hardware representation. This fixes a long-standing bias in the interface towards the architecture of the software rasterizer.
2010-05-12softpipe: Adverstise (tgsi_exec's) shader limits.José Fonseca
2010-05-12gallium: Make PIPE_CAP_xxx enums.José Fonseca
2010-05-06softpipe: fix dangling references to shaders in the TGSI executorBrian Paul
If a shader was bound to the fragment shader TGSI executor and it was then deleted and a new shader was allocated at the same address as the old shader, the new fragment shader would not get properly bound to the TGSI machine and we'd wind up using the old one. This would not have been a problem if shaders were refcounted. Now the TGSI machine is owned by the context rather than the quad pipeline's shader stage so that the softpipe_delete_fs_state() function can access it. Fixes sporadic failures of the piglit fp-long-alu test (fd.o bug 27989).
2010-05-05gallium: rename draw() to draw_elements() in vbuf codeBrian Paul
Now we have draw_elements() and draw_arrays() to be consistent with the pipe_context drawing functions.
2010-05-05gallium: rework provoking vertex codeBrian Paul
Builds on commit ddb0e18f6c5582d4d2cc59ffd16ad9c4639ed059 and fixes regressions in glean clipFlat test. We assume that Gallium drivers observe flatshade_first for all triangles and that all the assorted per-triangle calls in the 'draw' module also follow flatshade_first. Everything else builds on those rules. Gallium does not use follow flatshade_first for GL quads, quad strips and polygons; the "last" vertex is always the provoking vertex for those prims. So now there are separate QUAD_FIRST_PV and QUAD_LAST_PV macros in the draw primitive decomposition code instead of one QUAD macro.
2010-05-03gallium: move surface utility functions into u_surface.cBrian Paul
This is a better place than in u_rect.c
2010-05-03softpipe: invalidate cache view when swizzles are different.Dave Airlie
Current code only invalidated if the texture was different, however we store swizzled values in the cache, so we need to invalidate in that case also. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-05-03softpipe: Fix alpha blending for formats without alpha channel.José Fonseca
Don't use the dst alpha channel from the tile cache when it does not exist in the true format.
2010-05-19softpipe: Calculate slice_stride field in get_transfer().Michal Krol
2010-05-17gallium: EXT_timer_query support.Mathias Fröhlich
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
2010-04-29softpipe & llvmpipe: Enable SM3 capJakob Bornecrantz
2010-04-28softpipe: consolidate tex image offset codeBrian Paul
2010-04-28softpipe: use consistant names for local varsBrian Paul
2010-04-25softpipe: Make softpipe transfers in-order.José Fonseca
Transfer, being now a context operation, should happen in order with all other contexts operations. If there is rendering pending on the resource then the driver must flush and potentially wait itself internally. Instead of avoiding using transfers internally (as done in llvmpipe) I've opted to simply pass PIPE_TRANSFER_UNSYNCHRONIZED in all internal transfers, to avoid infinite recursion.
2010-04-25softpipe: Hardcode TILE_CLEAR_OPTIMIZATION to 1.José Fonseca
The un-optimized path relies on surface_fill which can only handle formats with depth <= 32, so it is pointless to keep it around.
2010-04-25softpipe: More accurate softpipe_is_format_supported().José Fonseca
Unfortunately there are some heavy limitations on supported render target formats due to the way clear values are used internally.
2010-04-23softpipe: compressed formats can't be render targetsBrian Paul
2010-04-23softpipe: YUV textures should be supported.José Fonseca
2010-04-21softpipe: call draw_wide_point_sprites()Brian Paul
2010-04-20gallium: replace pipe_resource::_usage with pipe_resource::usageBrian Paul
2010-04-20Merge branch 'gallium-index-bias'José Fonseca
2010-04-19softpipe: Implement index bias.José Fonseca
2010-04-19softpipe: add option to do polygon stipple in softpipe vs. draw moduleBrian Paul
For debugging purposes.
2010-04-19Merge branch '7.8'Brian Paul
Conflicts: src/gallium/auxiliary/draw/draw_context.c src/gallium/auxiliary/draw/draw_pipe_aaline.c src/gallium/drivers/llvmpipe/lp_context.c
2010-04-19gallium/draw: use correct rasterization state for wide/AA points/linesBrian Paul
When points or lines are decomposed into triangles, we need to be sure to disable polygon culling, stippling, "un-filled" modes, etc. This patch sets the rasterization state to disable those things prior to drawing points/lines with triangles, then restores the previous state afterward. The new piglit point-no-line-cull test checks this problem & solution.
2010-04-18softpipe: new comment and assertion for face valueBrian Paul
2010-04-18softpipe: fix computation of fragment[FACE] attributeBrian Paul
In TGSI, front facing is +1 and back-facing is -1. We were computing this attribute as +1 and 0 before. However, the value isn't actually used anywhere because we machine->Face attribute overrides it in tgsi_exec.c. That could be changed, removing some special-case code...
2010-04-18softpipe: clean-up and commentsBrian Paul
2010-04-18softpipe: document MAX_QUADSBrian Paul
2010-04-18softpipe: Preserve/check the signal of the number of scanlines in an edge.José Fonseca
It can become negative in some weird triangles.
2010-04-16softpipe: rename vars, update comments, etcBrian Paul
Use 'resource' instead of 'texture', etc.
2010-04-16softpipe: s/template/templat/ to avoid potential C++ issuesBrian Paul
2010-04-16softpipe: formatting fixes and commentsBrian Paul
2010-04-14softpipe: Fix division by zeroArpad Borsos
This can be triggered by running the cairo tests using the gl backend and softpipe. Signed-off-by: Brian Paul <brianp@vmware.com>