Package net.minecraft.client.gl
Class JsonEffectGlShader
java.lang.Object
net.minecraft.client.gl.JsonEffectGlShader
- All Implemented Interfaces:
AutoCloseable,GlShader
@Environment(CLIENT) public class JsonEffectGlShader extends Object implements GlShader, AutoCloseable
-
Field Summary
Fields Modifier and Type Field Description private static intactiveProgramRefprivate static JsonEffectGlShaderactiveShaderprivate List<Integer>attribLocsprivate List<String>attribNamesprivate GlBlendStateblendStateprivate static UniformDEFAULT_UNIFORMprivate ProgramfragmentShaderprivate static LoggerLOGGERprivate Stringnameprivate intprogramRefprivate Map<String,IntSupplier>samplerBindsprivate List<String>samplerNamesprivate List<Integer>samplerShaderLocsprivate Map<String,GlUniform>uniformByNameprivate List<GlUniform>uniformDataprivate List<Integer>uniformLocsprivate booleanuniformStateDirtyprivate ProgramvertexShader -
Constructor Summary
Constructors Constructor Description JsonEffectGlShader(ResourceManager resource, String name) -
Method Summary
Modifier and Type Method Description private voidaddSampler(JsonElement json)private voidaddUniform(JsonElement json)voidbindSampler(String samplerName, IntSupplier intSupplier)voidclose()static GlBlendStatedeserializeBlendState(JsonObject json)voiddisable()voidenable()private voidfinalizeUniformsAndSamplers()ProgramgetFragmentShader()intgetProgramRef()static ProgramgetShader(ResourceManager resourceManager, Program.Type type, String name)GlUniformgetUniformByName(String name)UniformgetUniformByNameOrDummy(String name)ProgramgetVertexShader()voidmarkUniformsDirty()
-
Field Details
-
LOGGER
-
DEFAULT_UNIFORM
-
activeShader
-
activeProgramRef
private static int activeProgramRef -
samplerBinds
-
samplerNames
-
samplerShaderLocs
-
uniformData
-
uniformLocs
-
uniformByName
-
programRef
private final int programRef -
name
-
uniformStateDirty
private boolean uniformStateDirty -
blendState
-
attribLocs
-
attribNames
-
vertexShader
-
fragmentShader
-
-
Constructor Details
-
JsonEffectGlShader
- Throws:
IOException
-
-
Method Details
-
getShader
public static Program getShader(ResourceManager resourceManager, Program.Type type, String name) throws IOException- Throws:
IOException
-
deserializeBlendState
-
close
public void close()- Specified by:
closein interfaceAutoCloseable
-
disable
public void disable() -
enable
public void enable() -
markUniformsDirty
public void markUniformsDirty()- Specified by:
markUniformsDirtyin interfaceGlShader
-
getUniformByName
-
getUniformByNameOrDummy
-
finalizeUniformsAndSamplers
private void finalizeUniformsAndSamplers() -
addSampler
-
bindSampler
-
addUniform
- Throws:
ShaderParseException
-
getVertexShader
- Specified by:
getVertexShaderin interfaceGlShader
-
getFragmentShader
- Specified by:
getFragmentShaderin interfaceGlShader
-
getProgramRef
public int getProgramRef()- Specified by:
getProgramRefin interfaceGlShader
-