Age | Commit message (Collapse) | Author |
|
clears were a bit limited in gallium:
- no scissoring (OGL only) nor explicit rectangle list (d3d9)
- no color/stencil masks (OGL only)
- no separate depth/stencil clears (d3d9/d3d10/OGL)
- cannot really clear single color buffer (only with resource_fill_region)
Additionally, d3d can clear surfaces not currently bound to the framebuffer.
It is, however, not easy to find some common ground what a clear should be able
to do, due to both API requirements and also hw differences (a case which might
be able to use a special clear path on one hw might need a "normal" quad render
on another).
Hence several clear methods are provided, and a driver should implement all of
them.
- clear: slightly modified to also be able to clear only depth or stencil in a
combined depth/stencil surface. This is however optional based on driver
capability though ideally it wouldn't be optional. AFAIK this is in fact
something used by applications quite a bit.
Otherwise, for now still doesn't allow clearing with scissors/mask (or single
color buffers)
- clearRT: clears a single (potentially unbound) color surface. This was formerly
roughly known as resource_fill_region. mesa st will not currently use this,
though potentially would be useful for GL ClearBuffer.
- clearDS: similar to above except for depth stencil surfaces.
Note that clearDS/clearRT currently handle can handle partial clear. This might
change however.
|
|
|
|
Refactor the code for all the glGetVertexAttrib() functions.
|
|
|
|
Still need to plug in API dispatch...
|
|
|
|
Still need to plug into dispatcher...
|
|
|
|
|
|
|
|
Reported-by: Gianluca Anzolin <gianluca@sottospazio.it>
|
|
|
|
Needed for vertex shaders too.
|
|
|
|
This at least stops rbug segfaulting at startup.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
clean up
|
|
clean up
|
|
|
|
With the removal of DRI1 support there where no use of this argument,
some drivers didn't even properly check it.
|
|
Since DRI1 support was dropped from st/dri it
makes no sense to keep this code around.
|
|
Nobody used it and the current code had been trough so many
changes yet never once being tested.
|
|
magic.
Flush means flush, i.e., all previous operations should be visible from
other contexts.
This does not imply unswizzling tiles, since unswizzling should be done on
a needed basis for any context.
|
|
'Default' unless GALLIVM_DEBUG=nopt option is set.
|
|
This fixes a double-free() error when not using a shared memory XImage.
The XDestroyImage() function frees the ximage->data buffer if non-NULL.
If we free it ourselves, we also need to NULL-out the pointer.
|
|
|
|
Convert Z from a normalized value in the range [0, 1] to an
object-space Z coordinate in [-1, +1] so that drawing at the new Z
position with the default/identity ortho projection results in the
original Z value. Used by the meta-Clear, Draw/CopyPixels and Bitmap
functions where the Z value comes from the clear value or raster
position.
Fixes piglit tests fdo23670-depth_test, quad-invariance and
glsl-orangebook-ch06-bump as well as oglc zbfunc.c.
https://bugs.freedesktop.org/show_bug.cgi?id=23670
|
|
The check was disabled when FEATURE_OES_framebuffer_object was enabled,
since that used to mean we weren't implementing regular OpenGL semantics.
Now that we can compile in support for multiple APIs, change the #ifdef to
compile the check in when FEATURE_GL is enabled and enable the check for
contexts that implement OpenGL at runtime.
|
|
|
|
|
|
|
|
|
|
Now that we can support different APIs at runtime, we need to check the
context for the API we're currently providing as well.
https://bugs.freedesktop.org/show_bug.cgi?id=28194
|
|
|
|
|
|
Signed-off-by: José Fonseca <jfonseca@vmware.com>
|
|
Based on Julien Pommier's SSE and SSE2 algorithms.
Signed-off-by: José Fonseca <jfonseca@vmware.com>
|
|
We should be able to do 16, but are limited by Mesa's static buffer
allocations.
|
|
If you used all 4 color targets we currently support, we would see 0
and end up just writing the first output. Give enough bits that we
can do the maximum of 16.
Fixes piglit fbo-drawbuffers-maxtargets.
|
|
|
|
|
|
|
|
|