Package icyllis.arc3d.engine
Class ShaderCaps
java.lang.Object
icyllis.arc3d.compiler.ShaderCaps
icyllis.arc3d.engine.ShaderCaps
Shader capabilities for our pipeline builder.
The default values assume GLSL 4.50 is supported and all equivalent extensions that promoted to GLSL 4.50 core.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Indicates how GLSL must interact with advanced blend equations.static final int
Indicates how GLSL must interact with advanced blend equations.int
boolean
boolean
boolean
boolean
boolean
int
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
True if either 'textureQueryLod' (GLSL 4.00) or 'textureQueryLOD' (ARB/EXT) is supported.boolean
True if OpenGL 4.4 is supported.boolean
boolean
True if either OpenGL 4.2 or OpenGL ES 3.1 is supported.boolean
True if either OpenGL 4.4 or OpenGL ES 3.2 is supported.boolean
static final int
Indicates how GLSL must interact with advanced blend equations.Fields inherited from class icyllis.arc3d.compiler.ShaderCaps
mFMASupport, mGLSLVersion, mSPIRVVersion, mTargetApi
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
applyOptionsOverrides
(ContextOptions options) void
dump
(String prefix, StringBuilder out) final boolean
Methods inherited from class icyllis.arc3d.compiler.ShaderCaps
toString
-
Field Details
-
NotSupported_AdvBlendEqInteraction
public static final int NotSupported_AdvBlendEqInteractionIndicates how GLSL must interact with advanced blend equations. The KHR extension requires special layout qualifiers in the fragment shader.- See Also:
-
Automatic_AdvBlendEqInteraction
public static final int Automatic_AdvBlendEqInteractionIndicates how GLSL must interact with advanced blend equations. The KHR extension requires special layout qualifiers in the fragment shader.- See Also:
-
GeneralEnable_AdvBlendEqInteraction
public static final int GeneralEnable_AdvBlendEqInteractionIndicates how GLSL must interact with advanced blend equations. The KHR extension requires special layout qualifiers in the fragment shader.- See Also:
-
mDualSourceBlendingSupport
public boolean mDualSourceBlendingSupport -
mPreferFlatInterpolation
public boolean mPreferFlatInterpolation -
mVertexIDSupport
public boolean mVertexIDSupport -
mInfinitySupport
public boolean mInfinitySupport -
mNonConstantArrayIndexSupport
public boolean mNonConstantArrayIndexSupport -
mBitManipulationSupport
public boolean mBitManipulationSupport -
mNoPerspectiveInterpolationSupport
public boolean mNoPerspectiveInterpolationSupport -
mReducedShaderMode
public boolean mReducedShaderMode -
mTextureQueryLod
public boolean mTextureQueryLodTrue if either 'textureQueryLod' (GLSL 4.00) or 'textureQueryLOD' (ARB/EXT) is supported. -
mUseUniformBinding
public boolean mUseUniformBindingTrue if either OpenGL 4.2 or OpenGL ES 3.1 is supported.Add binding on uniform block and samplers.
-
mUseVaryingLocation
public boolean mUseVaryingLocationTrue if either OpenGL 4.4 or OpenGL ES 3.2 is supported.Add location for interface matching between shader stages.
-
mUseBlockMemberOffset
public boolean mUseBlockMemberOffsetTrue if OpenGL 4.4 is supported.Add offset on block members for std140/std430 layout validation.
-
mUsePrecisionModifiers
public boolean mUsePrecisionModifiers -
mRequiresLocalOutputColorForFBFetch
public boolean mRequiresLocalOutputColorForFBFetch -
mMustObfuscateUniformColor
public boolean mMustObfuscateUniformColor -
mMustWriteToFragColor
public boolean mMustWriteToFragColor -
mColorSpaceMathNeedsFloat
public boolean mColorSpaceMathNeedsFloat -
mAvoidDfDxForGradientsWhenPossible
public boolean mAvoidDfDxForGradientsWhenPossible -
mSecondaryOutputExtension
-
mAdvBlendEqInteraction
public int mAdvBlendEqInteraction -
mMaxFragmentSamplers
public int mMaxFragmentSamplers
-
-
Constructor Details
-
ShaderCaps
public ShaderCaps()
-
-
Method Details
-
applyOptionsOverrides
-
mustEnableAdvBlendEqs
public final boolean mustEnableAdvBlendEqs() -
dump
- Overrides:
dump
in classShaderCaps
-