Class AMDSparseTexture
Recent advances in application complexity and a desire for higher resolutions have pushed texture sizes up considerably. Often, the amount of physical memory available to a graphics processor is a limiting factor in the performance of texture-heavy applications. Once the available physical memory is exhausted, paging may occur bringing performance down considerably - or worse, the application may fail. Nevertheless, the amount of address space available to the graphics processor has increased to the point where many gigabytes - or even terabytes of address space may be usable even though that amount of physical memory is not present.
This extension allows the separation of the graphics processor's address space (reservation) from the requirement that all textures must be physically backed (commitment). This exposes a limited form of virtualization for textures. Use cases include sparse (or partially resident) textures, texture paging, on-demand and delayed loading of texture assets and application controlled level of detail.
Requires OpenGL 2.0
or ARB_fragment_shader
.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Accepted by thepname
parameter to GetIntegerv, GetFloatv, GetDoublev, GetInteger64v, and GetBooleanv.static final int
Accepted by thepname
parameter to GetIntegerv, GetFloatv, GetDoublev, GetInteger64v, and GetBooleanv.static final int
Accepted by thepname
parameter to GetIntegerv, GetFloatv, GetDoublev, GetInteger64v, and GetBooleanv.static final int
Accepted by thepname
parameter of TexParameter{if}{v} and GetTexParameter{if}v.static final int
Accepted by thepname
parameter of GetTexParameter{if}v.static final int
Accepted by theflags
parameter to TexStorageSparseAMD and TextureStorageSparseAMD.static final int
Accepted by thepname
parameter to GetInternalformativ.static final int
Accepted by thepname
parameter to GetInternalformativ.static final int
Accepted by thepname
parameter to GetInternalformativ. -
Method Summary
Modifier and TypeMethodDescriptionstatic void
glTexStorageSparseAMD
(int target, int internalFormat, int width, int height, int depth, int layers, int flags) static void
glTextureStorageSparseAMD
(int texture, int target, int internalFormat, int width, int height, int depth, int layers, int flags)
-
Field Details
-
GL_TEXTURE_STORAGE_SPARSE_BIT_AMD
public static final int GL_TEXTURE_STORAGE_SPARSE_BIT_AMDAccepted by theflags
parameter to TexStorageSparseAMD and TextureStorageSparseAMD.- See Also:
-
GL_VIRTUAL_PAGE_SIZE_X_AMD
public static final int GL_VIRTUAL_PAGE_SIZE_X_AMDAccepted by thepname
parameter to GetInternalformativ.- See Also:
-
GL_VIRTUAL_PAGE_SIZE_Y_AMD
public static final int GL_VIRTUAL_PAGE_SIZE_Y_AMDAccepted by thepname
parameter to GetInternalformativ.- See Also:
-
GL_VIRTUAL_PAGE_SIZE_Z_AMD
public static final int GL_VIRTUAL_PAGE_SIZE_Z_AMDAccepted by thepname
parameter to GetInternalformativ.- See Also:
-
GL_MAX_SPARSE_TEXTURE_SIZE_AMD
public static final int GL_MAX_SPARSE_TEXTURE_SIZE_AMDAccepted by thepname
parameter to GetIntegerv, GetFloatv, GetDoublev, GetInteger64v, and GetBooleanv.- See Also:
-
GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD
public static final int GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMDAccepted by thepname
parameter to GetIntegerv, GetFloatv, GetDoublev, GetInteger64v, and GetBooleanv.- See Also:
-
GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS
public static final int GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERSAccepted by thepname
parameter to GetIntegerv, GetFloatv, GetDoublev, GetInteger64v, and GetBooleanv.- See Also:
-
GL_MIN_SPARSE_LEVEL_AMD
public static final int GL_MIN_SPARSE_LEVEL_AMDAccepted by thepname
parameter of GetTexParameter{if}v.- See Also:
-
GL_MIN_LOD_WARNING_AMD
public static final int GL_MIN_LOD_WARNING_AMDAccepted by thepname
parameter of TexParameter{if}{v} and GetTexParameter{if}v.- See Also:
-
-
Method Details
-
glTexStorageSparseAMD
public static void glTexStorageSparseAMD(int target, int internalFormat, int width, int height, int depth, int layers, int flags) -
glTextureStorageSparseAMD
public static void glTextureStorageSparseAMD(int texture, int target, int internalFormat, int width, int height, int depth, int layers, int flags)
-