| '''OpenGL extension SGIX.framezoom |
| |
| This module customises the behaviour of the |
| OpenGL.raw.GL.SGIX.framezoom to provide a more |
| Python-friendly API |
| |
| Overview (from the spec) |
| |
| This extension provides a additional way to rasterize geometric |
| primitives and pixel rectangles. The techique is to reduce the |
| number of pixels rasterized and (possibly) the number of depth and |
| stencil operations performed per primitive. Each pixel is zoomed |
| up and used to render an N x N block of screen pixels. The |
| implementation is free to choose the number of stencil and z pixels |
| that will correspond to each N x N block. |
| |
| This extension provides an opportunity to the implementation to |
| perform expensive raster operations at a reduced resolution, |
| increasing performance. Such operations may include |
| texture-mapping, depth & stencil tests, etc. The hardware should |
| be allowed to perform operations that it accelerates at full |
| hardware speed. |
| |
| The visual result will be the same as if a scene were rendered into |
| a small window, and then that buffer was copied and zoomed up into |
| a large window. |
| |
| All OpenGL parameters that effect rasterization size will implicitly |
| be multipled by N (this includes point size, line width, etc). |
| |
| The official definition of this extension is available here: |
| http://www.opengl.org/registry/specs/SGIX/framezoom.txt |
| ''' |
| from OpenGL import platform, constant, arrays |
| from OpenGL import extensions, wrapper |
| import ctypes |
| from OpenGL.raw.GL import _types, _glgets |
| from OpenGL.raw.GL.SGIX.framezoom import * |
| from OpenGL.raw.GL.SGIX.framezoom import _EXTENSION_NAME |
|
|
| def glInitFramezoomSGIX(): |
| '''Return boolean indicating whether this extension is available''' |
| from OpenGL import extensions |
| return extensions.hasGLExtension( _EXTENSION_NAME ) |
|
|
|
|
| |