initial check-in
This commit is contained in:
88
docs/MESA_copy_sub_buffer.spec
Normal file
88
docs/MESA_copy_sub_buffer.spec
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
Name
|
||||||
|
|
||||||
|
MESA_copy_sub_buffer
|
||||||
|
|
||||||
|
Name Strings
|
||||||
|
|
||||||
|
GLX_MESA_copy_sub_buffer
|
||||||
|
|
||||||
|
Contact
|
||||||
|
|
||||||
|
Brian Paul (brian 'at' mesa3d.org)
|
||||||
|
|
||||||
|
Status
|
||||||
|
|
||||||
|
Shipping since Mesa 2.6 in February, 1998.
|
||||||
|
|
||||||
|
Version
|
||||||
|
|
||||||
|
Last Modified Date: 8 June 2000
|
||||||
|
|
||||||
|
Number
|
||||||
|
|
||||||
|
???
|
||||||
|
|
||||||
|
Dependencies
|
||||||
|
|
||||||
|
OpenGL 1.0 or later is required.
|
||||||
|
GLX 1.0 or later is required.
|
||||||
|
|
||||||
|
Overview
|
||||||
|
|
||||||
|
The glxCopySubBufferMESA() function copies a rectangular region
|
||||||
|
of the back color buffer to the front color buffer. This can be
|
||||||
|
used to quickly repaint 3D windows in response to expose events
|
||||||
|
when the back color buffer cannot be damaged by other windows.
|
||||||
|
|
||||||
|
IP Status
|
||||||
|
|
||||||
|
Open-source; freely implementable.
|
||||||
|
|
||||||
|
Issues
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
New Procedures and Functions
|
||||||
|
|
||||||
|
void glXCopySubBufferMESA( Display *dpy, GLXDrawable drawable,
|
||||||
|
int x, int y, int width, int height );
|
||||||
|
|
||||||
|
New Tokens
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
Additions to Chapter 3 of the GLX 1.3 Specification (Functions and Errors)
|
||||||
|
|
||||||
|
Add to section 3.3.10 Double Buffering:
|
||||||
|
|
||||||
|
The function
|
||||||
|
|
||||||
|
void glXCopySubBufferMESA( Display *dpy, GLXDrawable drawable,
|
||||||
|
int x, int y, int width, int height );
|
||||||
|
|
||||||
|
may be used to copy a rectangular region of the back color buffer to
|
||||||
|
the front color buffer. This can be used to quickly repaint 3D windows
|
||||||
|
in response to expose events when the back color buffer cannot be
|
||||||
|
damaged by other windows.
|
||||||
|
|
||||||
|
<x> and <y> indicates the lower-left corner of the region to copy and
|
||||||
|
<width> and <height> indicate the size in pixels. Coordinate (0,0)
|
||||||
|
corresponds to the lower-left pixel of the window, like glReadPixels.
|
||||||
|
|
||||||
|
GLX Protocol
|
||||||
|
|
||||||
|
None at this time. The extension is implemented in terms of ordinary
|
||||||
|
Xlib protocol inside of Mesa.
|
||||||
|
|
||||||
|
Errors
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
New State
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
Revision History
|
||||||
|
|
||||||
|
8 June 2000 - initial specification
|
||||||
|
|
90
docs/MESA_pixmap_colormap.spec
Normal file
90
docs/MESA_pixmap_colormap.spec
Normal file
@@ -0,0 +1,90 @@
|
|||||||
|
Name
|
||||||
|
|
||||||
|
MESA_copy_sub_buffer
|
||||||
|
|
||||||
|
Name Strings
|
||||||
|
|
||||||
|
GLX_MESA_copy_sub_buffer
|
||||||
|
|
||||||
|
Contact
|
||||||
|
|
||||||
|
Brian Paul (brian 'at' mesa3d.org)
|
||||||
|
|
||||||
|
Status
|
||||||
|
|
||||||
|
Shipping since Mesa 1.2.8 in May, 1996.
|
||||||
|
|
||||||
|
Version
|
||||||
|
|
||||||
|
Last Modified Date: 8 June 2000
|
||||||
|
|
||||||
|
Number
|
||||||
|
|
||||||
|
???
|
||||||
|
|
||||||
|
Dependencies
|
||||||
|
|
||||||
|
OpenGL 1.0 or later is required.
|
||||||
|
GLX 1.0 or later is required.
|
||||||
|
|
||||||
|
Overview
|
||||||
|
|
||||||
|
Since Mesa allows RGB rendering into drawables with PseudoColor,
|
||||||
|
StaticColor, GrayScale and StaticGray visuals, Mesa needs a colormap
|
||||||
|
in order to compute pixel values during rendering.
|
||||||
|
|
||||||
|
The colormap associated with a window can be queried with normal
|
||||||
|
Xlib functions but there is no colormap associated with pixmaps.
|
||||||
|
|
||||||
|
The glXCreateGLXPixmapMESA function is an alternative to glXCreateGLXPixmap
|
||||||
|
which allows specification of a colormap.
|
||||||
|
|
||||||
|
IP Status
|
||||||
|
|
||||||
|
Open-source; freely implementable.
|
||||||
|
|
||||||
|
Issues
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
New Procedures and Functions
|
||||||
|
|
||||||
|
GLXPixmap glXCreateGLXPixmapMESA( Display *dpy, XVisualInfo *visual,
|
||||||
|
Pixmap pixmap, Colormap cmap );
|
||||||
|
|
||||||
|
New Tokens
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
Additions to Chapter 3 of the GLX 1.3 Specification (Functions and Errors)
|
||||||
|
|
||||||
|
Add to section 3.4.2 Off Screen Rendering
|
||||||
|
|
||||||
|
The Mesa implementation of GLX allows RGB rendering into X windows and
|
||||||
|
pixmaps of any visual class, not just TrueColor or DirectColor. In order
|
||||||
|
to compute pixel values from RGB values Mesa requires a colormap.
|
||||||
|
|
||||||
|
The function
|
||||||
|
|
||||||
|
GLXPixmap glXCreateGLXPixmapMESA( Display *dpy, XVisualInfo *visual,
|
||||||
|
Pixmap pixmap, Colormap cmap );
|
||||||
|
|
||||||
|
allows one to create a GLXPixmap with a specific colormap. The image
|
||||||
|
rendered into the pixmap may then be copied to a window (which uses the
|
||||||
|
same colormap and visual) with the expected results.
|
||||||
|
|
||||||
|
GLX Protocol
|
||||||
|
|
||||||
|
None since this is a client-side extension.
|
||||||
|
|
||||||
|
Errors
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
New State
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
Revision History
|
||||||
|
|
||||||
|
8 June 2000 - initial specification
|
85
docs/MESA_release_buffers.spec
Normal file
85
docs/MESA_release_buffers.spec
Normal file
@@ -0,0 +1,85 @@
|
|||||||
|
Name
|
||||||
|
|
||||||
|
MESA_release_buffers
|
||||||
|
|
||||||
|
Name Strings
|
||||||
|
|
||||||
|
GLX_MESA_release_buffers
|
||||||
|
|
||||||
|
Contact
|
||||||
|
|
||||||
|
Brian Paul (brian 'at' mesa3d.org)
|
||||||
|
|
||||||
|
Status
|
||||||
|
|
||||||
|
Shipping since Mesa 2.0 in October, 1996.
|
||||||
|
|
||||||
|
Version
|
||||||
|
|
||||||
|
Last Modified Date: 8 June 2000
|
||||||
|
|
||||||
|
Number
|
||||||
|
|
||||||
|
???
|
||||||
|
|
||||||
|
Dependencies
|
||||||
|
|
||||||
|
OpenGL 1.0 or later is required.
|
||||||
|
GLX 1.0 or later is required.
|
||||||
|
|
||||||
|
Overview
|
||||||
|
|
||||||
|
Mesa's implementation of GLX is entirely implemented on the client side.
|
||||||
|
Therefore, Mesa cannot immediately detect when an X window or pixmap is
|
||||||
|
destroyed in order to free any ancilliary data associated with the window
|
||||||
|
or pixmap.
|
||||||
|
|
||||||
|
The glxMesaReleaseBuffers() function can be used to explicitly indicate
|
||||||
|
when the back color buffer, depth buffer, stencil buffer, and/or accum-
|
||||||
|
ulation buffer associated with a drawable can be freed.
|
||||||
|
|
||||||
|
IP Status
|
||||||
|
|
||||||
|
Open-source; freely implementable.
|
||||||
|
|
||||||
|
Issues
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
New Procedures and Functions
|
||||||
|
|
||||||
|
Bool glXReleaseBuffersMESA( Display *dpy, GLXDrawable d );
|
||||||
|
|
||||||
|
New Tokens
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
Additions to Chapter 3 of the GLX 1.3 Specification (Functions and Errors)
|
||||||
|
|
||||||
|
The function
|
||||||
|
|
||||||
|
Bool glXReleaseBuffersMESA( Display *dpy, GLXDrawable d );
|
||||||
|
|
||||||
|
causes all software ancilliary buffers (back buffer, depth, stencil,
|
||||||
|
accum, etc) associated with the named drawable to be immediately
|
||||||
|
deallocated. True is returned if <d> is a valid Mesa GLX drawable,
|
||||||
|
else False is returned. After calling glXReleaseBuffersMESA, the
|
||||||
|
drawable should no longer be used for GL rendering. Results of
|
||||||
|
attempting to do so are undefined.
|
||||||
|
|
||||||
|
|
||||||
|
GLX Protocol
|
||||||
|
|
||||||
|
None, since this is a client-side operation.
|
||||||
|
|
||||||
|
Errors
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
New State
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
Revision History
|
||||||
|
|
||||||
|
8 June 2000 - initial specification
|
85
docs/MESA_set_3dfx_mode.spec
Normal file
85
docs/MESA_set_3dfx_mode.spec
Normal file
@@ -0,0 +1,85 @@
|
|||||||
|
Name
|
||||||
|
|
||||||
|
MESA_set_3dfx_mode
|
||||||
|
|
||||||
|
Name Strings
|
||||||
|
|
||||||
|
GLX_MESA_set_3dfx_mode
|
||||||
|
|
||||||
|
Contact
|
||||||
|
|
||||||
|
Brian Paul (brian 'at' mesa3d.org)
|
||||||
|
|
||||||
|
Status
|
||||||
|
|
||||||
|
Shipping since Mesa 2.6 in February, 1998.
|
||||||
|
|
||||||
|
Version
|
||||||
|
|
||||||
|
Last Modified Date: 8 June 2000
|
||||||
|
|
||||||
|
Number
|
||||||
|
|
||||||
|
???
|
||||||
|
|
||||||
|
Dependencies
|
||||||
|
|
||||||
|
OpenGL 1.0 or later is required.
|
||||||
|
GLX 1.0 or later is required.
|
||||||
|
|
||||||
|
Overview
|
||||||
|
|
||||||
|
The Mesa Glide driver allows full-screen rendering or rendering into
|
||||||
|
an X window. The glXSet3DfxModeMESA() function allows an application
|
||||||
|
to switch between full-screen and windowed rendering.
|
||||||
|
|
||||||
|
IP Status
|
||||||
|
|
||||||
|
Open-source; freely implementable.
|
||||||
|
|
||||||
|
Issues
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
New Procedures and Functions
|
||||||
|
|
||||||
|
GLboolean glXSet3DfxModeMESA( GLint mode );
|
||||||
|
|
||||||
|
New Tokens
|
||||||
|
|
||||||
|
GLX_3DFX_WINDOW_MODE_MESA 0x1
|
||||||
|
GLX_3DFX_FULLSCREEN_MODE_MESA 0x2
|
||||||
|
|
||||||
|
Additions to Chapter 3 of the GLX 1.3 Specification (Functions and Errors)
|
||||||
|
|
||||||
|
The Mesa Glide device driver allows either rendering in full-screen
|
||||||
|
mode or rendering into an X window. An application can switch between
|
||||||
|
full-screen and window rendering with the command:
|
||||||
|
|
||||||
|
GLboolean glXSet3DfxModeMESA( GLint mode );
|
||||||
|
|
||||||
|
<mode> may either be GLX_3DFX_WINDOW_MODE_MESA to indicate window
|
||||||
|
rendering or GLX_3DFX_FULLSCREEN_MODE_MESA to indicate full-screen mode.
|
||||||
|
|
||||||
|
GL_TRUE is returned if <mode> is valid and the operation completed
|
||||||
|
normally. GL_FALSE is returned if <mode> is invalid or if the Glide
|
||||||
|
driver is not being used.
|
||||||
|
|
||||||
|
Note that only one drawable and context can be created at any given
|
||||||
|
time with the Mesa Glide driver.
|
||||||
|
|
||||||
|
GLX Protocol
|
||||||
|
|
||||||
|
None since this is a client-side extension.
|
||||||
|
|
||||||
|
Errors
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
New State
|
||||||
|
|
||||||
|
None.
|
||||||
|
|
||||||
|
Revision History
|
||||||
|
|
||||||
|
8 June 2000 - initial specification
|
Reference in New Issue
Block a user