Age | Commit message (Collapse) | Author |
|
This has some limitations as we currently require a mapped framebuffer,
so it only really works with double-buffered ximage rgba8888 windows.
|
|
|
|
|
|
|
|
This reverts commit 2a2f8d806f74619f0a7cf97fdc7f7b3ad1cad81b.
|
|
glide is no longer compiled with stand-alone libGL, so this will not link.
There are still the glide config files. some code in demos and the
GLX_MESA_set_3dfx_mode code which could be removed.
|
|
This uses xmesa.h as the GLcore interface and avoids adding an explicit GLcore
inteface which would not be a proper interface anyway.
It puts the declarations of the three functions specific for XMesa/XFree86 in
xmesa.h, we can push them down to xmesa_xf86.h if hiding behind XFree86Server
ifdef's is not enough.
|
|
Keep external includes to glxheader.h and xmesa includes to xmesaP.h.
Drop the following from xm_image.h:
- dix-config.h (comes from glheader.h)
- xfree86 includes (come from GL/xmesa_xf86.h)
- ifdef __CYGWIN__ (leftover ? xm_api.c has something similar)
|
|
|
|
Drop XMesaSetVisualDisplay(), XMesaReset(), no longer used.
Add XMesaCopyContext() and move the GlxSetRenderTables() call for XGL within
XMesaForceCurrent(). This is to make xserver/GL/mesa/X/xf86glx.c unaware of
Mesa internals.
Also, clean some ifdef's to make it clear that USE_XSHM and XFree86Server are
mutually exclusive.
Lastly,
- move gcstruct.h from glxheader.h up to xmesa_xf86.h since it calls *gc->ops
- drop GL/glxtokens.h from xm_api|dd.c, GLX tokens come from glcore.h and are
used irrelevant of XFree86.
|
|
Nicolai writes:
When the pixmap pixel format has no alpha channel, the x11 driver
(software rendering) adds a wrapped alpha channel on request.
During SwapBuffers, this alpha channel is not copied from back to
front, which means that the front buffer doesn't really contain the
contents that the back buffer previously contained.
A subsequent glReadPixels from the front buffer will return an
incorrect result. The following patch attempts to fix this.
|
|
Do proper reference counting so that we don't wind up with dangling
references to deleted windows/framebuffers. Should help with bug 7205.
|
|
|
|
All buffer resizes now handled by xmesa_check_and_update_buffer_size() which
uses the _mesa_resize_framebuffer() function.
Moved all low-level XImage/Pixmap resizing into xm_buffers.c file.
Also, update lots of comments for Doxygen.
|
|
When the callback is called, free all Mesa's private visual and buffer
data structures which are tied to the display.
Fixes problems reported by Kitware.
|
|
|
|
|
|
|
|
|
|
New GLint64EXT and GLuint64EXT types (use C99's long long types).
New glGetQueryObject[u]i64vEXT() functions.
|
|
of the XMesaPixmap field to avoid some X server-side issues with casting.
|
|
|
|
yet).
Extends the query mechanism to query elapsed time while rendering.
|
|
span functions pass in a gl_renderbuffer to indicate which color
buffer should be drawn into. Optimized line/triangle routines are
smart enough to know which buffer to draw into as well.
The swrast->SetBuffer() routine should eventually be removed from
all drivers.
|
|
Main driver impacts:
- new code for creating the Mesa GLframebuffer
- new span/pixel read/write code
Some drivers not yet updated/tested.
|
|
|
|
the values in the contained GLframebuffer.
Removed some other unneeded code.
|
|
|
|
|
|
fields in __GLcontextModes (the base type). Removed the need to keep
the XMesaVisualInfo pointer when building inside the X-server.
|
|
by calling _mesa_init_driver_functions() and then plugging in the driver-
specific functions.
In particular, make sure ctx->Driver.NewTextureObject points to the
appropriate driver function so that _all_ texture objects are augmented
with the driver-specific data.
Put in a bunch of assertions in the texture-related driver functions that
texObj->DriverData is valid. Remove old dead code in near future.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
indicates the read AND draw color buffer for all software rasterization.
Lots of related clean-ups. See RELNOTES-4.1 for details.
|
|
|
|
instead of passing a GLcontext* to ResizeBuffers(), pass a GLframebuffer*.
The idea is that a window can be resized without it being bound to a rendering
context. This makes for a nice clean-up in the XFree86 server-side GLX code.
Renamed ctx->Driver.ResizeBuffersMESA() to ctx->Driver.ResizeBuffers().
|
|
from rendering into one window in parallel and wasn't really needed anyway.
|
|
|
|
|
|
|
|
|
|
and GLframebuffer structs instead of pointers
|
|
|