OpenGL.GL.NV.vertex_program4 | index /home/mcfletch/pylive/OpenGL/GL/NV/vertex_program4.py |
OpenGL extension NV.vertex_program4
This module customises the behaviour of the
OpenGL.raw.GL.NV.vertex_program4 to provide a more
Python-friendly API
Overview (from the spec)
This extension builds on the common assembly instruction set
infrastructure provided by NV_gpu_program4, adding vertex program-specific
features.
This extension provides the ability to specify integer vertex attributes
that are passed to vertex programs using integer data types, rather than
being converted to floating-point values as in existing vertex attribute
functions. The set of input and output bindings provided includes all
bindings supported by ARB_vertex_program. This extension provides
additional input bindings identifying the index of the vertex when vertex
arrays are used ("vertex.id") and the instance number when instanced
arrays are used ("vertex.instance", requires EXT_draw_instanced). It
also provides output bindings allowing vertex programs to directly specify
clip distances (for user clipping) plus a set of generic attributes that
allow programs to pass a greater number of attributes to subsequent
pipeline stages than is possible using only the pre-defined fixed-function
vertex outputs.
By and large, programs written to ARB_vertex_program can be ported
directly by simply changing the program header from "!!ARBvp1.0" to
"!!NVvp4.0", and then modifying instructions to take advantage of the
expanded feature set. There are a small number of areas where this
extension is not a functional superset of previous vertex program
extensions, which are documented in the NV_gpu_program4 specification.
The official definition of this extension is available here:
http://www.opengl.org/registry/specs/NV/vertex_program4.txt
Modules | ||||||
|
Data | ||
EXTENSION_NAME = 'GL_NV_vertex_program4' GL_VERTEX_ATTRIB_ARRAY_INTEGER_NV = GL_VERTEX_ATTRIB_ARRAY_INTEGER_NV __file__ = '/home/mcfletch/pylive/OpenGL/GL/NV/vertex_program4.pyc' __name__ = 'OpenGL.GL.NV.vertex_program4' __package__ = 'OpenGL.GL.NV' glGetVertexAttribIivEXT = <OpenGL.platform.baseplatform.glGetVertexAttribIivEXT object at 0x79a85d0> glGetVertexAttribIuivEXT = <OpenGL.platform.baseplatform.glGetVertexAttribIuivEXT object at 0x79a8650> glVertexAttribI1iEXT = <OpenGL.platform.baseplatform.glVertexAttribI1iEXT object at 0x79a6890> glVertexAttribI1ivEXT = <OpenGL.platform.baseplatform.glVertexAttribI1ivEXT object at 0x79a6cd0> glVertexAttribI1uiEXT = <OpenGL.platform.baseplatform.glVertexAttribI1uiEXT object at 0x79a6a50> glVertexAttribI1uivEXT = <OpenGL.platform.baseplatform.glVertexAttribI1uivEXT object at 0x79a6fd0> glVertexAttribI2iEXT = <OpenGL.platform.baseplatform.glVertexAttribI2iEXT object at 0x79a6950> glVertexAttribI2ivEXT = <OpenGL.platform.baseplatform.glVertexAttribI2ivEXT object at 0x79a6d90> glVertexAttribI2uiEXT = <OpenGL.platform.baseplatform.glVertexAttribI2uiEXT object at 0x79a6ad0> glVertexAttribI2uivEXT = <OpenGL.platform.baseplatform.glVertexAttribI2uivEXT object at 0x79a80d0> glVertexAttribI3iEXT = <OpenGL.platform.baseplatform.glVertexAttribI3iEXT object at 0x79a6110> glVertexAttribI3ivEXT = <OpenGL.platform.baseplatform.glVertexAttribI3ivEXT object at 0x79a6e50> glVertexAttribI3uiEXT = <OpenGL.platform.baseplatform.glVertexAttribI3uiEXT object at 0x79a6b50> glVertexAttribI3uivEXT = <OpenGL.platform.baseplatform.glVertexAttribI3uivEXT object at 0x79a8190> glVertexAttribI4bvEXT = <OpenGL.platform.baseplatform.glVertexAttribI4bvEXT object at 0x79a8310> glVertexAttribI4iEXT = <OpenGL.platform.baseplatform.glVertexAttribI4iEXT object at 0x79a6990> glVertexAttribI4ivEXT = <OpenGL.platform.baseplatform.glVertexAttribI4ivEXT object at 0x79a6f10> glVertexAttribI4svEXT = <OpenGL.platform.baseplatform.glVertexAttribI4svEXT object at 0x79a83d0> glVertexAttribI4ubvEXT = <OpenGL.platform.baseplatform.glVertexAttribI4ubvEXT object at 0x79a8490> glVertexAttribI4uiEXT = <OpenGL.platform.baseplatform.glVertexAttribI4uiEXT object at 0x79a6bd0> glVertexAttribI4uivEXT = <OpenGL.platform.baseplatform.glVertexAttribI4uivEXT object at 0x79a8250> glVertexAttribI4usvEXT = <OpenGL.platform.baseplatform.glVertexAttribI4usvEXT object at 0x79a84d0> glVertexAttribIPointerEXT = <OpenGL.platform.baseplatform.glVertexAttribIPointerEXT object at 0x79a8550> |