Age | Commit message (Collapse) | Author |
|
max_index must be observed to prevent crashes due to bad index data.
I've been using this patch for some time without regressions.
Some places, where we use internal vertex buffer, it is not entirely
clear what max_index should be, so passing just ~0 to avoid regressions
for now.
|
|
Conflicts:
src/gallium/auxiliary/draw/draw_context.c
src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
src/gallium/auxiliary/pipebuffer/Makefile
src/gallium/auxiliary/pipebuffer/SConscript
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
src/gallium/auxiliary/tgsi/tgsi_scan.c
src/gallium/drivers/i915/i915_surface.c
src/gallium/drivers/i915/i915_texture.c
src/gallium/drivers/llvmpipe/lp_setup.c
src/gallium/drivers/llvmpipe/lp_tex_sample_c.c
src/gallium/drivers/llvmpipe/lp_texture.c
src/gallium/drivers/softpipe/sp_prim_vbuf.c
src/gallium/state_trackers/xorg/xorg_dri2.c
src/gallium/winsys/drm/intel/gem/intel_drm_api.c
src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c
src/gallium/winsys/drm/radeon/core/radeon_drm.c
src/gallium/winsys/drm/vmware/core/vmw_screen_dri.c
src/mesa/state_tracker/st_cb_clear.c
|
|
|
|
|
|
It's all screaming for integer support -- fake it with float for now.
|
|
|
|
Modify the translate module to respect instance divisors and accept
instance id as a parameter to calculate input vertex offset.
|
|
fixes, cleanups, etc.
not working yet
|
|
The idea here is to eliminate the set_edgeflags() call in pipe_context
by treating edgeflags as a regular vertex element.
Edgeflags provoke special treatment in hardware, which means we need to
label them in some way, in this case we'll be passing them through the
vertex shader and labelling the vertex shader output with a new TGSI
semantic (TGSI_SEMANTIC_EDGEFLAG).
|
|
|
|
|
|
|
|
Also, rename p_tile.[ch] to u_tile.[ch]
|
|
flatshade-first"
This reverts commit ad44e68706877ab06929747e7a82c718c1c27e02.
|
|
The driver/pipeline will still be applying flatshade-first state to the
triangles emitted from vcache, so there's no need to rotate the vertices
of most primitives. The only exception is POLYGON, as explained in the
code.
|
|
|
|
|
|
|
|
It's quite a big struct & we examine it a lot (too much). Reduce
the impact of this by just looking at the active part where possible.
|
|
|
|
|
|
|
|
checks to code creating the cache.
|
|
|
|
|
|
It seems we get hash collisions fairly easily and the code as it was didn't
deal with that properly.
I think we need a simpler hashing interface...
|
|
Results in a fair speed improvement.
|
|
|
|
This state is effectively private to the vertex processing part
of the draw module.
|
|
|
|
|
|
This will at least allow us to make the initial gains to get decent
vertex performance much more quickly & with higher confidence of getting
it right.
At some later point can look again at code-generating all the
fetch/cliptest/viewport extras in the same block as the vertex shader.
For now, just need to get some decent baseline performance.
|