OpenGL extension NV.conditional_render
This module customises the behaviour of the
OpenGL.raw.GL.NV.conditional_render to provide a more
Overview (from the spec)
This extension provides support for conditional rendering based on the
results of an occlusion query. This mechanism allows an application to
potentially reduce the latency between the completion of an occlusion
query and the rendering commands depending on its result. It additionally
allows the decision of whether to render to be made without application
This extension defines two new functions, BeginConditionalRenderNV and
EndConditionalRenderNV, between which rendering commands may be discarded
based on the results of an occlusion query. If the specified occlusion
query returns a non-zero value, rendering commands between these calls are
executed. If the occlusion query returns a value of zero, all rendering
commands between the calls are discarded.
If the occlusion query results are not available when
BeginConditionalRenderNV is executed, the <mode> parameter specifies
whether the GL should wait for the query to complete or should simply
render the subsequent geometry unconditionally.
Additionally, the extension provides a set of "by region" modes, allowing
for implementations that divide rendering work by screen regions to
perform the conditional query test on a region-by-region basis without
checking the query results from other regions. Such a mode is useful for
cases like split-frame SLI, where a frame is divided between multiple
GPUs, each of which has its own occlusion query hardware.
The official definition of this extension is available here:
|EXTENSION_NAME = 'GL_NV_conditional_render'|
GL_QUERY_BY_REGION_NO_WAIT_NV = GL_QUERY_BY_REGION_NO_WAIT_NV
GL_QUERY_BY_REGION_WAIT_NV = GL_QUERY_BY_REGION_WAIT_NV
GL_QUERY_NO_WAIT_NV = GL_QUERY_NO_WAIT_NV
GL_QUERY_WAIT_NV = GL_QUERY_WAIT_NV
__file__ = '/home/mcfletch/pylive/OpenGL/GL/NV/conditional_render.pyc'
__name__ = 'OpenGL.GL.NV.conditional_render'
__package__ = 'OpenGL.GL.NV'
glBeginConditionalRenderNV = <OpenGL.platform.baseplatform.glBeginConditionalRenderNV object at 0x78d8cd0>
glEndConditionalRenderNV = <OpenGL.platform.baseplatform.glEndConditionalRenderNV object at 0x78d8d10>