File: fragment_program2.py

package info (click to toggle)
pyopengl 3.1.0%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 11,216 kB
  • sloc: python: 80,468; makefile: 4
file content (57 lines) | stat: -rw-r--r-- 1,966 bytes parent folder | download | duplicates (15)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
'''OpenGL extension NV.fragment_program2

This module customises the behaviour of the 
OpenGL.raw.GL.NV.fragment_program2 to provide a more 
Python-friendly API

Overview (from the spec)
	
	This extension, like the NV_fragment_program_option extension, provides
	additional fragment program functionality to extend the standard
	ARB_fragment_program language and execution environment.  ARB programs
	wishing to use this added functionality need only add:
	
	    OPTION NV_fragment_program2;
	
	to the beginning of their fragment programs.
	
	New functionality provided by this extension, above and beyond that
	already provided by the NV_fragment_program_option extension, includes:
	
	
	  * structured branching support, including data-dependent IF tests, loops
	    supporting a fixed number of iterations, and a data-dependent loop
	    exit instruction (BRK),
	
	  * subroutine calls,
	
	  * instructions to perform vector normalization, divide vector components
	    by a scalar, and perform two-component dot products (with or without a
	    scalar add),
	
	  * an instruction to perform a texture lookup with an explicit LOD,
	
	  * a loop index register for indirect access into the texture coordinate
	    attribute array, and
	
	  * a facing attribute that indicates whether the fragment is generated
	    from a front- or back-facing primitive.
	

The official definition of this extension is available here:
http://www.opengl.org/registry/specs/NV/fragment_program2.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.fragment_program2 import *
from OpenGL.raw.GL.NV.fragment_program2 import _EXTENSION_NAME

def glInitFragmentProgram2NV():
    '''Return boolean indicating whether this extension is available'''
    from OpenGL import extensions
    return extensions.hasGLExtension( _EXTENSION_NAME )


### END AUTOGENERATED SECTION