File: compute_variable_group_size.py

package info (click to toggle)
pyopengl 3.1.5%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 14,668 kB
  • sloc: python: 108,024; makefile: 4
file content (39 lines) | stat: -rw-r--r-- 1,670 bytes parent folder | download | duplicates (3)
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
'''OpenGL extension ARB.compute_variable_group_size

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

Overview (from the spec)
	
	This extension allows applications to write generic compute shaders that
	operate on workgroups with arbitrary dimensions.  Instead of specifying a
	fixed workgroup size in the compute shader, an application can use a
	compute shader using the /local_size_variable/ layout qualifer to indicate
	a variable workgroup size.  When using such compute shaders, the new
	command DispatchComputeGroupSizeARB should be used to specify both a
	workgroup size and workgroup count.
	
	In this extension, compute shaders with fixed group sizes must be
	dispatched by DispatchCompute and DispatchComputeIndirect.  Compute
	shaders with variable group sizes must be dispatched via
	DispatchComputeGroupSizeARB.  No support is provided in this extension for
	indirect dispatch of compute shaders with a variable group size.

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

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


### END AUTOGENERATED SECTION