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 ggu
-
Field Summary
FieldsModifier and TypeFieldDescription@Nullable GlUniformprivate static final Uniformprivate static final int@Nullable GlUniform@Nullable GlUniform@Nullable GlUniform@Nullable GlUniform@Nullable GlUniform@Nullable GlUniformprivate final int@Nullable GlUniform@Nullable GlUniform@Nullable GlUniform@Nullable GlUniform@Nullable GlUniform@Nullable GlUniformprivate final IntListprivate final List<ShaderProgramDefinition.Sampler> private final Object2IntMap<String> @Nullable GlUniform@Nullable GlUniform -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddSamplerTexture(String name, int texture) voidaddUniform(GlUniform uniform) voidbind()voidclose()static ShaderProgramcreate(CompiledShader vertexShader, CompiledShader fragmentShader, VertexFormat format) private GlUniformintgetGlRef()@Nullable GlUniformgetUniform(String name) getUniformOrDefault(String name) voidinitializeUniforms(VertexFormat.DrawMode drawMode, Matrix4f viewMatrix, Matrix4f projectionMatrix, Window window) voidset(List<ShaderProgramDefinition.Uniform> uniforms, List<ShaderProgramDefinition.Sampler> samplers) voidunbind()
-
Field Details
-
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 pLggu;p:Lfcw;
-
field_53837
private static final int field_53837- See Also:
- Mappings:
Namespace Name Mixin selector named field_53837Lnet/minecraft/client/gl/ShaderProgram;field_53837:Iintermediary field_53837Lnet/minecraft/class_5944;field_53837:Iofficial qLggu;q:I
-
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 rLggu;r:Ljava/util/List;
-
samplerTextures
- Mappings:
Namespace Name Mixin selector named samplerTexturesLnet/minecraft/client/gl/ShaderProgram;samplerTextures:Lit/unimi/dsi/fastutil/objects/Object2IntMap;intermediary field_53839Lnet/minecraft/class_5944;field_53839:Lit/unimi/dsi/fastutil/objects/Object2IntMap;official sLggu;s:Lit/unimi/dsi/fastutil/objects/Object2IntMap;
-
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 tLggu;t: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 uLggu;u: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 vLggu;v: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 wLggu;w:I
-
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 aLggu;a:Lfcz;
-
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 bLggu;b:Lfcz;
-
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 cLggu;c:Lfcz;
-
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 dLggu;d:Lfcz;
-
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 eLggu;e:Lfcz;
-
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 fLggu;f:Lfcz;
-
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 gLggu;g:Lfcz;
-
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 hLggu;h:Lfcz;
-
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 iLggu;i:Lfcz;
-
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 jLggu;j:Lfcz;
-
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 kLggu;k:Lfcz;
-
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 lLggu;l:Lfcz;
-
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 mLggu;m:Lfcz;
-
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 nLggu;n:Lfcz;
-
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 oLggu;o:Lfcz;
-
-
Constructor Details
-
ShaderProgram
private ShaderProgram(int glRef) - Mappings:
Namespace Name Mixin selector named <init>Lnet/minecraft/client/gl/ShaderProgram;<init>(I)Vintermediary <init>Lnet/minecraft/class_5944;<init>(I)Vofficial <init>Lggu;<init>(I)V
-
-
Method Details
-
create
public static ShaderProgram create(CompiledShader vertexShader, CompiledShader fragmentShader, VertexFormat format) 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;)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;)Lnet/minecraft/class_5944;official aLggu;a(Lfcx;Lfcx;Lfdn;)Lggu;
-
set
public void set(List<ShaderProgramDefinition.Uniform> uniforms, List<ShaderProgramDefinition.Sampler> samplers) - 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 aLggu;a(Ljava/util/List;Ljava/util/List;)V
-
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 aLggu;a()V
-
bind
public void bind()- Mappings:
Namespace Name Mixin selector named bindLnet/minecraft/client/gl/ShaderProgram;bind()Vintermediary method_34586Lnet/minecraft/class_5944;method_34586()Vofficial bLggu;b()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 aLggu;a(Ljava/lang/String;)Lfcz;
-
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 bLggu;b(Ljava/lang/String;)Lfcw;
-
addSamplerTexture
- Mappings:
Namespace Name Mixin selector named addSamplerTextureLnet/minecraft/client/gl/ShaderProgram;addSamplerTexture(Ljava/lang/String;I)Vintermediary method_62899Lnet/minecraft/class_5944;method_62899(Ljava/lang/String;I)Vofficial aLggu;a(Ljava/lang/String;I)V
-
createGlUniform
- Mappings:
Namespace Name Mixin selector named createGlUniformLnet/minecraft/client/gl/ShaderProgram;createGlUniform(Lnet/minecraft/client/gl/ShaderProgramDefinition$Uniform;)Lnet/minecraft/client/gl/GlUniform;intermediary method_62898Lnet/minecraft/class_5944;method_62898(Lnet/minecraft/class_10157$class_10159;)Lnet/minecraft/class_284;official aLggu;a(Lgie$b;)Lfcz;
-
initializeUniforms
public void initializeUniforms(VertexFormat.DrawMode drawMode, Matrix4f viewMatrix, Matrix4f projectionMatrix, Window window) - Mappings:
Namespace Name Mixin selector named initializeUniformsLnet/minecraft/client/gl/ShaderProgram;initializeUniforms(Lnet/minecraft/client/render/VertexFormat$DrawMode;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lnet/minecraft/client/util/Window;)Vintermediary method_60897Lnet/minecraft/class_5944;method_60897(Lnet/minecraft/class_293$class_5596;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lnet/minecraft/class_1041;)Vofficial aLggu;a(Lfdn$c;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lfcl;)V
-
addUniform
- Mappings:
Namespace Name Mixin selector named addUniformLnet/minecraft/client/gl/ShaderProgram;addUniform(Lnet/minecraft/client/gl/GlUniform;)Vintermediary method_62897Lnet/minecraft/class_5944;method_62897(Lnet/minecraft/class_284;)Vofficial aLggu;a(Lfcz;)V
-
getGlRef
@VisibleForTesting public int getGlRef()- Mappings:
Namespace Name Mixin selector named getGlRefLnet/minecraft/client/gl/ShaderProgram;getGlRef()Iintermediary method_1270Lnet/minecraft/class_5944;method_1270()Iofficial cLggu;c()I
-