Package net.minecraft.client.shader
Class ShaderInstance
- java.lang.Object
-
- net.minecraft.client.shader.ShaderInstance
-
- All Implemented Interfaces:
java.lang.AutoCloseable,IShaderManager
public class ShaderInstance extends java.lang.Object implements IShaderManager, java.lang.AutoCloseable
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<java.lang.String>attributeNamesprivate java.util.List<java.lang.Integer>attributesprivate JSONBlendingModeblendprivate booleandirtyprivate static ShaderDefaultDUMMY_UNIFORMprivate ShaderLoaderfragmentProgramprivate static ShaderInstancelastAppliedEffectprivate static intlastProgramIdprivate static org.apache.logging.log4j.LoggerLOGGERprivate java.lang.Stringnameprivate intprogramIdprivate java.util.List<java.lang.Integer>samplerLocationsprivate java.util.Map<java.lang.String,java.util.function.IntSupplier>samplerMapprivate java.util.List<java.lang.String>samplerNamesprivate java.util.List<java.lang.Integer>uniformLocationsprivate java.util.Map<java.lang.String,ShaderUniform>uniformMapprivate java.util.List<ShaderUniform>uniformsprivate ShaderLoadervertexProgram
-
Constructor Summary
Constructors Constructor Description ShaderInstance(IResourceManager p_i50988_1_, java.lang.String p_i50988_2_)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidapply()voidclear()voidclose()ShaderLoadergetFragmentProgram()intgetId()static ShaderLoadergetOrCreate(IResourceManager p_216542_0_, ShaderLoader.ShaderType p_216542_1_, java.lang.String p_216542_2_)ShaderUniformgetUniform(java.lang.String p_216539_1_)ShaderLoadergetVertexProgram()voidmarkDirty()static JSONBlendingModeparseBlendNode(com.google.gson.JsonObject p_216543_0_)private voidparseSamplerNode(com.google.gson.JsonElement p_216541_1_)private voidparseUniformNode(com.google.gson.JsonElement p_216540_1_)ShaderDefaultsafeGetUniform(java.lang.String p_216538_1_)voidsetSampler(java.lang.String p_216537_1_, java.util.function.IntSupplier p_216537_2_)private voidupdateLocations()
-
-
-
Field Detail
-
LOGGER
private static final org.apache.logging.log4j.Logger LOGGER
-
DUMMY_UNIFORM
private static final ShaderDefault DUMMY_UNIFORM
-
lastAppliedEffect
private static ShaderInstance lastAppliedEffect
-
lastProgramId
private static int lastProgramId
-
samplerMap
private final java.util.Map<java.lang.String,java.util.function.IntSupplier> samplerMap
-
samplerNames
private final java.util.List<java.lang.String> samplerNames
-
samplerLocations
private final java.util.List<java.lang.Integer> samplerLocations
-
uniforms
private final java.util.List<ShaderUniform> uniforms
-
uniformLocations
private final java.util.List<java.lang.Integer> uniformLocations
-
uniformMap
private final java.util.Map<java.lang.String,ShaderUniform> uniformMap
-
programId
private final int programId
-
name
private final java.lang.String name
-
dirty
private boolean dirty
-
blend
private final JSONBlendingMode blend
-
attributes
private final java.util.List<java.lang.Integer> attributes
-
attributeNames
private final java.util.List<java.lang.String> attributeNames
-
vertexProgram
private final ShaderLoader vertexProgram
-
fragmentProgram
private final ShaderLoader fragmentProgram
-
-
Constructor Detail
-
ShaderInstance
public ShaderInstance(IResourceManager p_i50988_1_, java.lang.String p_i50988_2_) throws java.io.IOException
- Throws:
java.io.IOException
-
-
Method Detail
-
getOrCreate
public static ShaderLoader getOrCreate(IResourceManager p_216542_0_, ShaderLoader.ShaderType p_216542_1_, java.lang.String p_216542_2_) throws java.io.IOException
- Throws:
java.io.IOException
-
parseBlendNode
public static JSONBlendingMode parseBlendNode(com.google.gson.JsonObject p_216543_0_)
-
close
public void close()
- Specified by:
closein interfacejava.lang.AutoCloseable
-
clear
public void clear()
-
apply
public void apply()
-
markDirty
public void markDirty()
- Specified by:
markDirtyin interfaceIShaderManager
-
getUniform
@Nullable public ShaderUniform getUniform(java.lang.String p_216539_1_)
-
safeGetUniform
public ShaderDefault safeGetUniform(java.lang.String p_216538_1_)
-
updateLocations
private void updateLocations()
-
parseSamplerNode
private void parseSamplerNode(com.google.gson.JsonElement p_216541_1_)
-
setSampler
public void setSampler(java.lang.String p_216537_1_, java.util.function.IntSupplier p_216537_2_)
-
parseUniformNode
private void parseUniformNode(com.google.gson.JsonElement p_216540_1_) throws JSONException- Throws:
JSONException
-
getVertexProgram
public ShaderLoader getVertexProgram()
- Specified by:
getVertexProgramin interfaceIShaderManager
-
getFragmentProgram
public ShaderLoader getFragmentProgram()
- Specified by:
getFragmentProgramin interfaceIShaderManager
-
getId
public int getId()
- Specified by:
getIdin interfaceIShaderManager
-
-