org.lwjgl.opengles.KHRShaderSubgroup Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of lwjgl-opengles Show documentation
Show all versions of lwjgl-opengles Show documentation
A royalty-free, cross-platform API for full-function 2D and 3D graphics on embedded systems - including consoles, phones, appliances and vehicles.
/*
* Copyright LWJGL. All rights reserved.
* License terms: https://www.lwjgl.org/license
* MACHINE GENERATED FILE, DO NOT EDIT
*/
package org.lwjgl.opengles;
/**
* Native bindings to the KHR_shader_subgroup extension.
*
* This extension enables support for the {@code KHR_shader_subgroup} shading language extension in OpenGL ES.
*
* The extension adds API queries to be able to query
*
*
* - the size of subgroups in this implementation ({@link #GL_SUBGROUP_SIZE_KHR SUBGROUP_SIZE_KHR})
* - which shader stages support subgroup operations ({@link #GL_SUBGROUP_SUPPORTED_STAGES_KHR SUBGROUP_SUPPORTED_STAGES_KHR})
* - which subgroup features are supported ({@link #GL_SUBGROUP_SUPPORTED_FEATURES_KHR SUBGROUP_SUPPORTED_FEATURES_KHR})
* - whether quad subgroup operations are supported in all stages supporting subgroup operations ({@link #GL_SUBGROUP_QUAD_ALL_STAGES_KHR SUBGROUP_QUAD_ALL_STAGES_KHR})
*
*
* In OpenGL ES implementations, this extension does NOT add support for SPIR-V or for any of the built-in shading language functions (8.18) that have
* {@code genDType} (double) prototypes.
*
* Requires {@link GLES31 GLES 3.1}.
*/
public final class KHRShaderSubgroup {
/** Accepted as the {@code pname} argument for {@link GLES20#glGetIntegerv GetIntegerv} and {@link GLES30#glGetInteger64v GetInteger64v}. */
public static final int
GL_SUBGROUP_SIZE_KHR = 0x9532,
GL_SUBGROUP_SUPPORTED_STAGES_KHR = 0x9533,
GL_SUBGROUP_SUPPORTED_FEATURES_KHR = 0x9534;
/** Accepted as the {@code pname} argument for {@link GLES20#glGetBooleanv GetBooleanv}. */
public static final int GL_SUBGROUP_QUAD_ALL_STAGES_KHR = 0x9535;
/** Returned as bitfield in the {@code data} argument when {@link GLES20#glGetIntegerv GetIntegerv} is queried with a {@code pname} of {@link #GL_SUBGROUP_SUPPORTED_FEATURES_KHR SUBGROUP_SUPPORTED_FEATURES_KHR}. */
public static final int
GL_SUBGROUP_FEATURE_BASIC_BIT_KHR = 0x1,
GL_SUBGROUP_FEATURE_VOTE_BIT_KHR = 0x2,
GL_SUBGROUP_FEATURE_ARITHMETIC_BIT_KHR = 0x4,
GL_SUBGROUP_FEATURE_BALLOT_BIT_KHR = 0x8,
GL_SUBGROUP_FEATURE_SHUFFLE_BIT_KHR = 0x10,
GL_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT_KHR = 0x20,
GL_SUBGROUP_FEATURE_CLUSTERED_BIT_KHR = 0x40,
GL_SUBGROUP_FEATURE_QUAD_BIT_KHR = 0x80;
private KHRShaderSubgroup() {}
}