Age | Commit message (Collapse) | Author |
|
|
|
Use hardware rendering to compute/render mipmap levels.
The fallback path (which will be used for non-renderable texture formats)
isn't working yet.
|
|
system of vertices
Also, export st_make_passthrough_vertex_shader() from st_cb_drawpixels.c
|
|
Now, pass in a template object and return a new object.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The state tracker will call pipe->get_paramf(PIPE_CAP_BITMAP_TEXCOORD_BIAS)
to get a bias factor for adjusting the texcoords used in bitmap/drawpixels.
This allows us to compensate for small differences in rasterization from
one device to another.
|
|
same slot
This fixes the glsl/bump.c and glsl/texdemo1.c programs
|
|
If the vertex program writes to an output that's not consumed by the
fragment program, map the vp output to an unused slot.
|
|
|
|
This was part of Keith's patch from Friday.
|
|
- Remove put/get tile, just have users call put_tile_raw, etc directly.
- Remove surface_data call, just map it locally.
|
|
undefined state
|
|
|
|
This is basically half of Keith's draw/flush patch.
The stage->point/line/tri() functions are now self-validating, the validator
functions are installed by the flush() function.
There were excessive calls to validate_pipeline(), however. This was caused
by draw_prim_queue_flush() keeping a local 'first' variable that always pointed
to the validate functions. Replaced 'first' with 'draw->pipeline.first'.
Performance in gears is up just slightly with this patch.
|
|
Provide an actual definition of the pipe_buffer struct, containing
the parameters used to create the buffer, and its refcount.
Shift refcounting buffers out of the winsys interface, similar to
surfaces & textures.
Rework pipebuffer/ to reflect the fact these changes, and also Michel's
reworking of the buffer interface.
|
|
The properties of a buffer represented by struct pipe_buffer_handle are now
basically constant over its lifetime. The state tracker gets to deal with any
more complex buffer semantics it may need to provide.
|
|
|
|
|
|
now.
|
|
Remove all dependencies on vertex_info, except for draw_vbuf.
Drawing stages now strictly operate on post-transformed vertices and don't
know anything about hw vertices.
Use vertex program output info for two-side/flat/etc stages.
Temporarily disable vbuf module in softpipe driver.
|
|
progs/samples/select.c
|
|
|
|
|
|
|
|
This reverts commit 310e7ca44b33558a9aa22f43024d1bfb63642128.
|
|
These are changes that are in our internal branch, but somehow were skipped
so far. It was done using visual comparison of the branches --
it is likely that changes are being carried on the wrong way
|
|
This allows a few more programs to run and not crash.
Need to get constant buffer uploads working...
|
|
|
|
|
|
|
|
|
|
The CSO returned by pipe->create_vs_state() can't be passed to the
private draw module. That was causing glRasterPos to blow up.
Add a 'draw_shader' field to st_vertex_program for use with the private
draw module.
Change st_context->state.vs type from cso_vertex_shader to st_vertex_program.
|
|
pipe_get/put_tile_rgba() now use pipe->get/put_tile internally.
Also simplify the <format>_get/put_tile_rgba() helper functions and clean up
some inconsitencies in them.
|
|
It's now the responsibility of surface users to keep track of their mappings.
|
|
Also make enum pipe_format used in a couple more places.
|
|
|
|
|
|
|
|
|
|
|
|
If an app never called glViewport, the viewport size was always 0 by 0 pixels.
Now pass initial size to st_create_framebuffer() and initialize the viewport
and scissor bounds in st_make_current().
This could also be fixed by ensuring the gl_framebuffers passed to
_mesa_make_current() were initialized to the right size. But that involves
allocating the renderbuffers/pipe_surfaces earlier and that runs into some
other issues ATM.
Also remove obsolete createRenderbuffers param to st_create_framebuffer().
|
|
|
|
|
|
|
|
|