Package net.minecraft.client.gl
Class ShaderProgram
java.lang.Object
net.minecraft.client.gl.ShaderProgram
- All Implemented Interfaces:
AutoCloseable
Represents a shader program. Also known as a program object that can be
created with
glCreateProgram.
Warning: This class is referred to as a shader in
strings. However, this does NOT represent a shader object that can be
created with glCreateShader. CompiledShader is what
represents a shader object.
- See Also:
- Mappings:
Namespace Name named net/minecraft/client/gl/ShaderProgramintermediary net/minecraft/class_5944official fja
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Stringprivate static final Uniformprivate final intstatic ShaderProgramprivate static final Loggerprivate final IntListprivate final Object2ObjectMap<String, DrawableTexture> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddSamplerTexture(String name, @Nullable DrawableTexture texture) voidclose()static ShaderProgramcreate(CompiledShader vertexShader, CompiledShader fragmentShader, VertexFormat format, String name) private GlUniformcreateUniform(ShaderPipeline.Uniform uniform) intgetGlRef()private static @Nullable UniformTypegetType(int id) getUniform(String name) getUniformOrDefault(String name) voidinitializeUniforms(VertexFormat.DrawMode drawMode, Matrix4f viewMatrix, Matrix4f projectionMatrix, float screenWidth, float screenHeight) voidset(List<ShaderPipeline.Uniform> uniforms, List<String> samplers) toString()voidunbind()
-
Field Details
-
LOGGER
- Mappings:
Namespace Name Mixin selector named LOGGERLnet/minecraft/client/gl/ShaderProgram;LOGGER:Lorg/slf4j/Logger;intermediary field_58041Lnet/minecraft/class_5944;field_58041:Lorg/slf4j/Logger;official rLfja;r:Lorg/slf4j/Logger;
-
PREDEFINED_UNIFORMS
- Mappings:
Namespace Name Mixin selector named PREDEFINED_UNIFORMSLnet/minecraft/client/gl/ShaderProgram;PREDEFINED_UNIFORMS:Ljava/util/Set;intermediary field_57863Lnet/minecraft/class_5944;field_57863:Ljava/util/Set;official aLfja;a:Ljava/util/Set;
-
INVALID
- Mappings:
Namespace Name Mixin selector named INVALIDLnet/minecraft/client/gl/ShaderProgram;INVALID:Lnet/minecraft/client/gl/ShaderProgram;intermediary field_57864Lnet/minecraft/class_5944;field_57864:Lnet/minecraft/class_5944;official bLfja;b:Lfja;
-
DEFAULT_UNIFORM
- Mappings:
Namespace Name Mixin selector named DEFAULT_UNIFORMLnet/minecraft/client/gl/ShaderProgram;DEFAULT_UNIFORM:Lnet/minecraft/client/gl/Uniform;intermediary field_29484Lnet/minecraft/class_5944;field_29484:Lnet/minecraft/class_278;official sLfja;s:Lfiu;
-
samplers
- Mappings:
Namespace Name Mixin selector named samplersLnet/minecraft/client/gl/ShaderProgram;samplers:Ljava/util/List;intermediary field_53838Lnet/minecraft/class_5944;field_53838:Ljava/util/List;official tLfja;t:Ljava/util/List;
-
samplerTextures
- Mappings:
Namespace Name Mixin selector named samplerTexturesLnet/minecraft/client/gl/ShaderProgram;samplerTextures:Lit/unimi/dsi/fastutil/objects/Object2ObjectMap;intermediary field_53839Lnet/minecraft/class_5944;field_53839:Lit/unimi/dsi/fastutil/objects/Object2ObjectMap;official uLfja;u:Lit/unimi/dsi/fastutil/objects/Object2ObjectMap;
-
samplerLocations
- Mappings:
Namespace Name Mixin selector named samplerLocationsLnet/minecraft/client/gl/ShaderProgram;samplerLocations:Lit/unimi/dsi/fastutil/ints/IntList;intermediary field_53840Lnet/minecraft/class_5944;field_53840:Lit/unimi/dsi/fastutil/ints/IntList;official vLfja;v:Lit/unimi/dsi/fastutil/ints/IntList;
-
uniforms
- Mappings:
Namespace Name Mixin selector named uniformsLnet/minecraft/client/gl/ShaderProgram;uniforms:Ljava/util/List;intermediary field_29490Lnet/minecraft/class_5944;field_29490:Ljava/util/List;official wLfja;w:Ljava/util/List;
-
uniformsByName
- Mappings:
Namespace Name Mixin selector named uniformsByNameLnet/minecraft/client/gl/ShaderProgram;uniformsByName:Ljava/util/Map;intermediary field_53841Lnet/minecraft/class_5944;field_53841:Ljava/util/Map;official xLfja;x:Ljava/util/Map;
-
glRef
private final int glRef- Mappings:
Namespace Name Mixin selector named glRefLnet/minecraft/client/gl/ShaderProgram;glRef:Iintermediary field_29493Lnet/minecraft/class_5944;field_29493:Iofficial yLfja;y:I
-
debugLabel
- Mappings:
Namespace Name Mixin selector named debugLabelLnet/minecraft/client/gl/ShaderProgram;debugLabel:Ljava/lang/String;intermediary field_57865Lnet/minecraft/class_5944;field_57865:Ljava/lang/String;official zLfja;z:Ljava/lang/String;
-
modelViewMat
- Mappings:
Namespace Name Mixin selector named modelViewMatLnet/minecraft/client/gl/ShaderProgram;modelViewMat:Lnet/minecraft/client/gl/GlUniform;intermediary field_29470Lnet/minecraft/class_5944;field_29470:Lnet/minecraft/class_284;official cLfja;c:Lfjf;
-
projectionMat
- Mappings:
Namespace Name Mixin selector named projectionMatLnet/minecraft/client/gl/ShaderProgram;projectionMat:Lnet/minecraft/client/gl/GlUniform;intermediary field_29471Lnet/minecraft/class_5944;field_29471:Lnet/minecraft/class_284;official dLfja;d:Lfjf;
-
textureMat
- Mappings:
Namespace Name Mixin selector named textureMatLnet/minecraft/client/gl/ShaderProgram;textureMat:Lnet/minecraft/client/gl/GlUniform;intermediary field_29472Lnet/minecraft/class_5944;field_29472:Lnet/minecraft/class_284;official eLfja;e:Lfjf;
-
screenSize
- Mappings:
Namespace Name Mixin selector named screenSizeLnet/minecraft/client/gl/ShaderProgram;screenSize:Lnet/minecraft/client/gl/GlUniform;intermediary field_29473Lnet/minecraft/class_5944;field_29473:Lnet/minecraft/class_284;official fLfja;f:Lfjf;
-
colorModulator
- Mappings:
Namespace Name Mixin selector named colorModulatorLnet/minecraft/client/gl/ShaderProgram;colorModulator:Lnet/minecraft/client/gl/GlUniform;intermediary field_29474Lnet/minecraft/class_5944;field_29474:Lnet/minecraft/class_284;official gLfja;g:Lfjf;
-
light0Direction
- Mappings:
Namespace Name Mixin selector named light0DirectionLnet/minecraft/client/gl/ShaderProgram;light0Direction:Lnet/minecraft/client/gl/GlUniform;intermediary field_29475Lnet/minecraft/class_5944;field_29475:Lnet/minecraft/class_284;official hLfja;h:Lfjf;
-
light1Direction
- Mappings:
Namespace Name Mixin selector named light1DirectionLnet/minecraft/client/gl/ShaderProgram;light1Direction:Lnet/minecraft/client/gl/GlUniform;intermediary field_29476Lnet/minecraft/class_5944;field_29476:Lnet/minecraft/class_284;official iLfja;i:Lfjf;
-
glintAlpha
- Mappings:
Namespace Name Mixin selector named glintAlphaLnet/minecraft/client/gl/ShaderProgram;glintAlpha:Lnet/minecraft/client/gl/GlUniform;intermediary field_42231Lnet/minecraft/class_5944;field_42231:Lnet/minecraft/class_284;official jLfja;j:Lfjf;
-
fogStart
- Mappings:
Namespace Name Mixin selector named fogStartLnet/minecraft/client/gl/ShaderProgram;fogStart:Lnet/minecraft/client/gl/GlUniform;intermediary field_29477Lnet/minecraft/class_5944;field_29477:Lnet/minecraft/class_284;official kLfja;k:Lfjf;
-
fogEnd
- Mappings:
Namespace Name Mixin selector named fogEndLnet/minecraft/client/gl/ShaderProgram;fogEnd:Lnet/minecraft/client/gl/GlUniform;intermediary field_29478Lnet/minecraft/class_5944;field_29478:Lnet/minecraft/class_284;official lLfja;l:Lfjf;
-
fogColor
- Mappings:
Namespace Name Mixin selector named fogColorLnet/minecraft/client/gl/ShaderProgram;fogColor:Lnet/minecraft/client/gl/GlUniform;intermediary field_29479Lnet/minecraft/class_5944;field_29479:Lnet/minecraft/class_284;official mLfja;m:Lfjf;
-
fogShape
- Mappings:
Namespace Name Mixin selector named fogShapeLnet/minecraft/client/gl/ShaderProgram;fogShape:Lnet/minecraft/client/gl/GlUniform;intermediary field_36373Lnet/minecraft/class_5944;field_36373:Lnet/minecraft/class_284;official nLfja;n:Lfjf;
-
lineWidth
- Mappings:
Namespace Name Mixin selector named lineWidthLnet/minecraft/client/gl/ShaderProgram;lineWidth:Lnet/minecraft/client/gl/GlUniform;intermediary field_29480Lnet/minecraft/class_5944;field_29480:Lnet/minecraft/class_284;official oLfja;o:Lfjf;
-
gameTime
- Mappings:
Namespace Name Mixin selector named gameTimeLnet/minecraft/client/gl/ShaderProgram;gameTime:Lnet/minecraft/client/gl/GlUniform;intermediary field_29481Lnet/minecraft/class_5944;field_29481:Lnet/minecraft/class_284;official pLfja;p:Lfjf;
-
modelOffset
- Mappings:
Namespace Name Mixin selector named modelOffsetLnet/minecraft/client/gl/ShaderProgram;modelOffset:Lnet/minecraft/client/gl/GlUniform;intermediary field_53139Lnet/minecraft/class_5944;field_53139:Lnet/minecraft/class_284;official qLfja;q:Lfjf;
-
-
Constructor Details
-
ShaderProgram
- Mappings:
Namespace Name Mixin selector named <init>Lnet/minecraft/client/gl/ShaderProgram;<init>(ILjava/lang/String;)Vintermediary <init>Lnet/minecraft/class_5944;<init>(ILjava/lang/String;)Vofficial <init>Lfja;<init>(ILjava/lang/String;)V
-
-
Method Details
-
create
public static ShaderProgram create(CompiledShader vertexShader, CompiledShader fragmentShader, VertexFormat format, String name) throws ShaderLoader.LoadException - Throws:
ShaderLoader.LoadException- Mappings:
Namespace Name Mixin selector named createLnet/minecraft/client/gl/ShaderProgram;create(Lnet/minecraft/client/gl/CompiledShader;Lnet/minecraft/client/gl/CompiledShader;Lnet/minecraft/client/render/VertexFormat;Ljava/lang/String;)Lnet/minecraft/client/gl/ShaderProgram;intermediary method_62896Lnet/minecraft/class_5944;method_62896(Lnet/minecraft/class_10141;Lnet/minecraft/class_10141;Lnet/minecraft/class_293;Ljava/lang/String;)Lnet/minecraft/class_5944;official aLfja;a(Lfjd;Lfjd;Lflu;Ljava/lang/String;)Lfja;
-
set
- Mappings:
Namespace Name Mixin selector named setLnet/minecraft/client/gl/ShaderProgram;set(Ljava/util/List;Ljava/util/List;)Vintermediary method_62900Lnet/minecraft/class_5944;method_62900(Ljava/util/List;Ljava/util/List;)Vofficial aLfja;a(Ljava/util/List;Ljava/util/List;)V
-
createUniform
- Mappings:
Namespace Name Mixin selector named createUniformLnet/minecraft/client/gl/ShaderProgram;createUniform(Lnet/minecraft/client/gl/ShaderPipeline$Uniform;)Lnet/minecraft/client/gl/GlUniform;intermediary method_67880Lnet/minecraft/class_5944;method_67880(Lnet/minecraft/class_10785$class_10788;)Lnet/minecraft/class_284;official aLfja;a(Lfjr$c;)Lfjf;
-
close
public void close()- Specified by:
closein interfaceAutoCloseable
-
unbind
public void unbind()- Mappings:
Namespace Name Mixin selector named unbindLnet/minecraft/client/gl/ShaderProgram;unbind()Vintermediary method_34585Lnet/minecraft/class_5944;method_34585()Vofficial aLfja;a()V
-
getUniform
- Mappings:
Namespace Name Mixin selector named getUniformLnet/minecraft/client/gl/ShaderProgram;getUniform(Ljava/lang/String;)Lnet/minecraft/client/gl/GlUniform;intermediary method_34582Lnet/minecraft/class_5944;method_34582(Ljava/lang/String;)Lnet/minecraft/class_284;official aLfja;a(Ljava/lang/String;)Lfjf;
-
getUniformOrDefault
- Mappings:
Namespace Name Mixin selector named getUniformOrDefaultLnet/minecraft/client/gl/ShaderProgram;getUniformOrDefault(Ljava/lang/String;)Lnet/minecraft/client/gl/Uniform;intermediary method_35785Lnet/minecraft/class_5944;method_35785(Ljava/lang/String;)Lnet/minecraft/class_278;official bLfja;b(Ljava/lang/String;)Lfiu;
-
addSamplerTexture
- Mappings:
Namespace Name Mixin selector named addSamplerTextureLnet/minecraft/client/gl/ShaderProgram;addSamplerTexture(Ljava/lang/String;Lnet/minecraft/client/texture/DrawableTexture;)Vintermediary method_62899Lnet/minecraft/class_5944;method_62899(Ljava/lang/String;Lnet/minecraft/class_10792;)Vofficial aLfja;a(Ljava/lang/String;Lflj;)V
-
initializeUniforms
public void initializeUniforms(VertexFormat.DrawMode drawMode, Matrix4f viewMatrix, Matrix4f projectionMatrix, float screenWidth, float screenHeight) - Mappings:
Namespace Name Mixin selector named initializeUniformsLnet/minecraft/client/gl/ShaderProgram;initializeUniforms(Lnet/minecraft/client/render/VertexFormat$DrawMode;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;FF)Vintermediary method_60897Lnet/minecraft/class_5944;method_60897(Lnet/minecraft/class_293$class_5596;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;FF)Vofficial aLfja;a(Lflu$c;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;FF)V
-
getGlRef
- Mappings:
Namespace Name Mixin selector named getGlRefLnet/minecraft/client/gl/ShaderProgram;getGlRef()Iintermediary method_1270Lnet/minecraft/class_5944;method_1270()Iofficial bLfja;b()I
-
toString
-
getDebugLabel
- Mappings:
Namespace Name Mixin selector named getDebugLabelLnet/minecraft/client/gl/ShaderProgram;getDebugLabel()Ljava/lang/String;intermediary method_68404Lnet/minecraft/class_5944;method_68404()Ljava/lang/String;official cLfja;c()Ljava/lang/String;
-
getSamplerLocations
- Mappings:
Namespace Name Mixin selector named getSamplerLocationsLnet/minecraft/client/gl/ShaderProgram;getSamplerLocations()Lit/unimi/dsi/fastutil/ints/IntList;intermediary method_68405Lnet/minecraft/class_5944;method_68405()Lit/unimi/dsi/fastutil/ints/IntList;official dLfja;d()Lit/unimi/dsi/fastutil/ints/IntList;
-
getSamplers
- Mappings:
Namespace Name Mixin selector named getSamplersLnet/minecraft/client/gl/ShaderProgram;getSamplers()Ljava/util/List;intermediary method_68670Lnet/minecraft/class_5944;method_68670()Ljava/util/List;official eLfja;e()Ljava/util/List;
-
getUniforms
- Mappings:
Namespace Name Mixin selector named getUniformsLnet/minecraft/client/gl/ShaderProgram;getUniforms()Ljava/util/List;intermediary method_68406Lnet/minecraft/class_5944;method_68406()Ljava/util/List;official fLfja;f()Ljava/util/List;
-
getType
- Mappings:
Namespace Name Mixin selector named getTypeLnet/minecraft/client/gl/ShaderProgram;getType(I)Lnet/minecraft/client/gl/UniformType;intermediary method_68695Lnet/minecraft/class_5944;method_68695(I)Lnet/minecraft/class_10789;official aLfja;a(I)Lfkz;
-