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 concept of an "immutable texture". Views can only be created of textures created with TexStorage*.
Requires GLES 3..
| Modifier and Type | Field and Description |
|---|---|
| public static final int | GL_TEXTURE_IMMUTABLE_LEVELS
Accepted by the |
| public static final int | GL_TEXTURE_VIEW_MIN_LAYER_EXT
Accepted by the |
| public static final int | GL_TEXTURE_VIEW_MIN_LEVEL_EXT
Accepted by the |
| public static final int | GL_TEXTURE_VIEW_NUM_LAYERS_EXT
Accepted by the |
| public static final int | GL_TEXTURE_VIEW_NUM_LEVELS_EXT
Accepted by the |
| Access | Constructor and Description |
|---|---|
| protected |
| Modifier and Type | Method and Description |
|---|---|
| public static native void | glTextureViewEXT(int texture, int target, int origtexture, int internalformat, int minlevel, int numlevels, int minlayer, int numlayers)
|
| GL_TEXTURE_IMMUTABLE_LEVELS | back to summary |
|---|---|
| public static final int GL_TEXTURE_IMMUTABLE_LEVELS Accepted by the | |
| GL_TEXTURE_VIEW_MIN_LAYER_EXT | back to summary |
|---|---|
| public static final int GL_TEXTURE_VIEW_MIN_LAYER_EXT Accepted by the | |
| GL_TEXTURE_VIEW_MIN_LEVEL_EXT | back to summary |
|---|---|
| public static final int GL_TEXTURE_VIEW_MIN_LEVEL_EXT Accepted by the | |
| GL_TEXTURE_VIEW_NUM_LAYERS_EXT | back to summary |
|---|---|
| public static final int GL_TEXTURE_VIEW_NUM_LAYERS_EXT Accepted by the | |
| GL_TEXTURE_VIEW_NUM_LEVELS_EXT | back to summary |
|---|---|
| public static final int GL_TEXTURE_VIEW_NUM_LEVELS_EXT Accepted by the | |
| EXTTextureView | back to summary |
|---|---|
| protected EXTTextureView() | |
| glTextureViewEXT | back to summary |
|---|---|
| public static native void glTextureViewEXT(int texture, int target, int origtexture, int internalformat, int minlevel, int numlevels, int minlayer, int numlayers) | |