All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.lwjgl.opengles.EXTTextureView Maven / Gradle / Ivy

Go to download

A royalty-free, cross-platform API for full-function 2D and 3D graphics on embedded systems - including consoles, phones, appliances and vehicles.

There is a newer version: 3.3.4
Show newest version
/*
 * Copyright LWJGL. All rights reserved.
 * License terms: https://www.lwjgl.org/license
 * MACHINE GENERATED FILE, DO NOT EDIT
 */
package org.lwjgl.opengles;

import static org.lwjgl.system.Checks.*;

/**
 * Native bindings to the EXT_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:

* *
    *
  • 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 concept of an "immutable texture". Views can only be created of textures created with TexStorage*.

* *

Requires {@link GLES30 GLES 3.0}.

*/ public class EXTTextureView { /** Accepted by the {@code pname} parameters of GetTexParameterfv and GetTexParameteriv. */ public static final int GL_TEXTURE_VIEW_MIN_LEVEL_EXT = 0x82DB, GL_TEXTURE_VIEW_NUM_LEVELS_EXT = 0x82DC, GL_TEXTURE_VIEW_MIN_LAYER_EXT = 0x82DD, GL_TEXTURE_VIEW_NUM_LAYERS_EXT = 0x82DE, GL_TEXTURE_IMMUTABLE_LEVELS = 0x82DF; static { GLES.initialize(); } protected EXTTextureView() { throw new UnsupportedOperationException(); } static boolean isAvailable(GLESCapabilities caps) { return checkFunctions( caps.glTextureViewEXT ); } // --- [ glTextureViewEXT ] --- public static native void nglTextureViewEXT(int texture, int target, int origtexture, int internalformat, int minlevel, int numlevels, int minlayer, int numlayers); public static void glTextureViewEXT(int texture, int target, int origtexture, int internalformat, int minlevel, int numlevels, int minlayer, int numlayers) { nglTextureViewEXT(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy