OpenGL.GL.ARB.texture_view
OpenGL extension ARB.texture_view
This module customises the behaviour of the
OpenGL.raw.GL.ARB.texture_view to provide a more
Python-friendly API
Overview (from the spec)
This extension allows a texture's data store to be "viewed" in multiple
ways, either reinterpreting the data format/type as a different format/
type with the same element size, or by clamping the mipmap level range
or array slice range.
The goals of this extension are to avoid having these alternate views
become shared mutable containers of shared mutable objects, and to add
the views to the API in a minimally invasive way.
No new object types are added. Conceptually, a texture object is split
into the following parts:
- A data store holding texel data.
- State describing which portions of the data store to use, and how to interpret the data elements.
- An embedded sampler object.
- Various other texture parameters.
With this extension, multiple textures can share a data store and have
different state describing which portions of the data store to use and how
to interpret the data elements. The data store is refcounted and not
destroyed until the last texture sharing it is deleted.
This extension leverages the ARB_texture_storage concept of an "immutable
texture". Views can only be created of textures created with TexStorage.
The official definition of this extension is available here:
http://www.opengl.org/registry/specs/ARB/texture_view.txt
Functions
glTextureView(
texture
,
target
,
origtexture
,
internalformat
,
minlevel
,
numlevels
,
minlayer
,
numlayers
)
Constants
GL_TEXTURE_IMMUTABLE_LEVELS (33503)
GL_TEXTURE_VIEW_MIN_LAYER (33501)
GL_TEXTURE_VIEW_MIN_LEVEL (33499)
GL_TEXTURE_VIEW_NUM_LAYERS (33502)
GL_TEXTURE_VIEW_NUM_LEVELS (33500)