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 glj
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Uniformprivate static final intprivate final intprivate final IntListprivate final List<ShaderProgramDefinition.Sampler> private final Object2IntMap<String> private final Map<String, ShaderProgramDefinition.Uniform> -
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()getUniform(String name) getUniformDefinition(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 pLglj;p:Lffj;
-
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 qLglj;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 rLglj;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 sLglj;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 tLglj;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 uLglj;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 vLglj;v:Ljava/util/Map;
-
uniformDefinitionsByName
- Mappings:
Namespace Name Mixin selector named uniformDefinitionsByNameLnet/minecraft/client/gl/ShaderProgram;uniformDefinitionsByName:Ljava/util/Map;intermediary field_54926Lnet/minecraft/class_5944;field_54926:Ljava/util/Map;official wLglj;w: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 xLglj;x: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 aLglj;a:Lffm;
-
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 bLglj;b:Lffm;
-
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 cLglj;c:Lffm;
-
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 dLglj;d:Lffm;
-
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 eLglj;e:Lffm;
-
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 fLglj;f:Lffm;
-
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 gLglj;g:Lffm;
-
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 hLglj;h:Lffm;
-
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 iLglj;i:Lffm;
-
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 jLglj;j:Lffm;
-
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 kLglj;k:Lffm;
-
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 lLglj;l:Lffm;
-
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 mLglj;m:Lffm;
-
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 nLglj;n:Lffm;
-
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 oLglj;o:Lffm;
-
-
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>Lglj;<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 aLglj;a(Lffk;Lffk;Lfga;)Lglj;
-
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 aLglj;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 aLglj;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 bLglj;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 aLglj;a(Ljava/lang/String;)Lffm;
-
getUniformDefinition
- Mappings:
Namespace Name Mixin selector named getUniformDefinitionLnet/minecraft/client/gl/ShaderProgram;getUniformDefinition(Ljava/lang/String;)Lnet/minecraft/client/gl/ShaderProgramDefinition$Uniform;intermediary method_65028Lnet/minecraft/class_5944;method_65028(Ljava/lang/String;)Lnet/minecraft/class_10157$class_10159;official bLglj;b(Ljava/lang/String;)Lgms$b;
-
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 cLglj;c(Ljava/lang/String;)Lffj;
-
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 aLglj;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 aLglj;a(Lgms$b;)Lffm;
-
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 aLglj;a(Lfga$c;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lfey;)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 aLglj;a(Lffm;)V
-
getGlRef
- Mappings:
Namespace Name Mixin selector named getGlRefLnet/minecraft/client/gl/ShaderProgram;getGlRef()Iintermediary method_1270Lnet/minecraft/class_5944;method_1270()Iofficial cLglj;c()I
-