| '''OpenGL extension ARB.conservative_depth |
| |
| This module customises the behaviour of the |
| OpenGL.raw.GL.ARB.conservative_depth to provide a more |
| Python-friendly API |
| |
| Overview (from the spec) |
| |
| There is a common optimization for hardware accelerated implementation of |
| OpenGL which relies on an early depth test to be run before the fragment |
| shader so that the shader evaluation can be skipped if the fragment ends |
| up being discarded because it is occluded. |
| |
| This optimization does not affect the final rendering, and is typically |
| possible when the fragment does not change the depth programmatically. |
| (i.e.: it does not write to the built-in gl_FragDepth output). There are, |
| however a class of operations on the depth in the shader which could |
| still be performed while allowing the early depth test to operate. |
| |
| This extension allows the application to pass enough information to the |
| GL implementation to activate such optimizations safely. |
| |
| The official definition of this extension is available here: |
| http://www.opengl.org/registry/specs/ARB/conservative_depth.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.ARB.conservative_depth import * |
| from OpenGL.raw.GL.ARB.conservative_depth import _EXTENSION_NAME |
|
|
| def glInitConservativeDepthARB(): |
| '''Return boolean indicating whether this extension is available''' |
| from OpenGL import extensions |
| return extensions.hasGLExtension( _EXTENSION_NAME ) |
|
|
|
|
| |