Download lib/python3.9/site-packages/OpenGL/GL/NV/bindless_multi_draw_indirect.py from camenduru/slahmr-test: direct link, hf CLI and curl.
- Browser
- Download file 1.82 kB
-
https://huggingface.co/camenduru/slahmr-test/resolve/main/lib/python3.9/site-packages/OpenGL/GL/NV/bindless_multi_draw_indirect.py
- Command line
-
hf download hf://camenduru/slahmr-test/lib/python3.9/site-packages/OpenGL/GL/NV/bindless_multi_draw_indirect.py
-
curl -L -o bindless_multi_draw_indirect.py https://huggingface.co/camenduru/slahmr-test/resolve/main/lib/python3.9/site-packages/OpenGL/GL/NV/bindless_multi_draw_indirect.py
1.82 kB
| '''OpenGL extension NV.bindless_multi_draw_indirect | |
| This module customises the behaviour of the | |
| OpenGL.raw.GL.NV.bindless_multi_draw_indirect to provide a more | |
| Python-friendly API | |
| Overview (from the spec) | |
| This extension combines NV_vertex_buffer_unified_memory and | |
| ARB_multi_draw_indirect to allow the processing of multiple drawing | |
| commands, whose vertex and index data can be sourced from arbitrary | |
| buffer locations, by a single function call. | |
| The NV_vertex_buffer_unified_memory extension provided a mechanism to | |
| specify vertex attrib and element array locations using GPU addresses. | |
| Prior to this extension, these addresses had to be set through explicit | |
| function calls. Now the ability to set the pointer addresses indirectly | |
| by extending the GL_ARB_draw_indirect mechanism has been added. | |
| Combined with other "bindless" extensions, such as NV_bindless_texture and | |
| NV_shader_buffer_load, it is now possible for the GPU to create draw | |
| commands that source all resource inputs, which are common to change | |
| frequently between draw calls from the GPU: vertex and index buffers, | |
| samplers, images and other shader input data stored in buffers. | |
| The official definition of this extension is available here: | |
| http://www.opengl.org/registry/specs/NV/bindless_multi_draw_indirect.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.NV.bindless_multi_draw_indirect import * | |
| from OpenGL.raw.GL.NV.bindless_multi_draw_indirect import _EXTENSION_NAME | |
| def glInitBindlessMultiDrawIndirectNV(): | |
| '''Return boolean indicating whether this extension is available''' | |
| from OpenGL import extensions | |
| return extensions.hasGLExtension( _EXTENSION_NAME ) | |
| ### END AUTOGENERATED SECTION |