Top Description Fields Constructors Methods
org.lwjgl.opengl

public Class ARBTextureView

extends Object
Class Inheritance
Imports
org.lwjgl.system.*

Native bindings to the ARB_texture_view extension.

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:

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.

Requires OpenGL 4.2 or ARB_texture_storage. Promoted to core in OpenGL 4.3.

Field Summary

Modifier and TypeField and Description
public static final int
GL_TEXTURE_IMMUTABLE_LEVELS

Accepted by the pname parameters of GetTexParameterfv and GetTexParameteriv.

public static final int
GL_TEXTURE_VIEW_MIN_LAYER

Accepted by the pname parameters of GetTexParameterfv and GetTexParameteriv.

public static final int
GL_TEXTURE_VIEW_MIN_LEVEL

Accepted by the pname parameters of GetTexParameterfv and GetTexParameteriv.

public static final int
GL_TEXTURE_VIEW_NUM_LAYERS

Accepted by the pname parameters of GetTexParameterfv and GetTexParameteriv.

public static final int
GL_TEXTURE_VIEW_NUM_LEVELS

Accepted by the pname parameters of GetTexParameterfv and GetTexParameteriv.

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static void
glTextureView(int
the texture object to be initialized as a view
texture
,
int
the target to be used for the newly initialized texture
target
,
int
the name of a texture object of which to make a view
origtexture
,
int
the internal format for the newly created view
internalformat
,
int
the lowest level of detail of the view
minlevel
,
int
the number of levels of detail to include in the view
numlevels
,
int
the index of the first layer to include in the view
minlayer
,
int
the number of layers to include in the view
numlayers
)

Initializes a texture as a data alias of another texture's data store.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

GL_TEXTURE_IMMUTABLE_LEVELSback to summary
public static final int GL_TEXTURE_IMMUTABLE_LEVELS

Accepted by the pname parameters of GetTexParameterfv and GetTexParameteriv.

GL_TEXTURE_VIEW_MIN_LAYERback to summary
public static final int GL_TEXTURE_VIEW_MIN_LAYER

Accepted by the pname parameters of GetTexParameterfv and GetTexParameteriv.

GL_TEXTURE_VIEW_MIN_LEVELback to summary
public static final int GL_TEXTURE_VIEW_MIN_LEVEL

Accepted by the pname parameters of GetTexParameterfv and GetTexParameteriv.

GL_TEXTURE_VIEW_NUM_LAYERSback to summary
public static final int GL_TEXTURE_VIEW_NUM_LAYERS

Accepted by the pname parameters of GetTexParameterfv and GetTexParameteriv.

GL_TEXTURE_VIEW_NUM_LEVELSback to summary
public static final int GL_TEXTURE_VIEW_NUM_LEVELS

Accepted by the pname parameters of GetTexParameterfv and GetTexParameteriv.

Constructor Detail

ARBTextureViewback to summary
protected ARBTextureView()

Method Detail

glTextureViewback to summary
public static void glTextureView(int texture, int target, int origtexture, int internalformat, int minlevel, int numlevels, int minlayer, int numlayers)

Initializes a texture as a data alias of another texture's data store.

Parameters
texture:int

the texture object to be initialized as a view

target:int

the target to be used for the newly initialized texture

origtexture:int

the name of a texture object of which to make a view

internalformat:int

the internal format for the newly created view

minlevel:int

the lowest level of detail of the view

numlevels:int

the number of levels of detail to include in the view

minlayer:int

the index of the first layer to include in the view

numlayers:int

the number of layers to include in the view