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 fjh
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Stringprivate static final Uniformprivate final intstatic ShaderProgramprivate static final Loggerprivate final IntListprivate final Object2ObjectMap<String, GpuTexture> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddSamplerTexture(String name, @Nullable GpuTexture texture) voidclose()static ShaderProgramcreate(CompiledShader vertexShader, CompiledShader fragmentShader, VertexFormat format, String name) private GlUniformcreateUniform(RenderPipeline.UniformDescription description) 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<RenderPipeline.UniformDescription> 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 rLfjh;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 aLfjh;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 bLfjh;b:Lfjh;
-
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 sLfjh;s:Lfja;
-
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 tLfjh;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 uLfjh;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 vLfjh;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 wLfjh;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 xLfjh;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 yLfjh;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 zLfjh;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 cLfjh;c:Lfjm;
-
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 dLfjh;d:Lfjm;
-
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 eLfjh;e:Lfjm;
-
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 fLfjh;f:Lfjm;
-
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 gLfjh;g:Lfjm;
-
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 hLfjh;h:Lfjm;
-
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 iLfjh;i:Lfjm;
-
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 jLfjh;j:Lfjm;
-
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 kLfjh;k:Lfjm;
-
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 lLfjh;l:Lfjm;
-
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 mLfjh;m:Lfjm;
-
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 nLfjh;n:Lfjm;
-
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 oLfjh;o:Lfjm;
-
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 pLfjh;p:Lfjm;
-
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 qLfjh;q:Lfjm;
-
-
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>Lfjh;<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;Lcom/mojang/blaze3d/vertex/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;Lcom/mojang/blaze3d/vertex/VertexFormat;Ljava/lang/String;)Lnet/minecraft/class_5944;official aLfjh;a(Lfjk;Lfjk;Lcom/mojang/blaze3d/vertex/VertexFormat;Ljava/lang/String;)Lfjh;
-
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 aLfjh;a(Ljava/util/List;Ljava/util/List;)V
-
createUniform
- Mappings:
Namespace Name Mixin selector named createUniformLnet/minecraft/client/gl/ShaderProgram;createUniform(Lcom/mojang/blaze3d/pipeline/RenderPipeline$UniformDescription;)Lnet/minecraft/client/gl/GlUniform;intermediary method_67880Lnet/minecraft/class_5944;method_67880(Lcom/mojang/blaze3d/pipeline/RenderPipeline$UniformDescription;)Lnet/minecraft/class_284;official aLfjh;a(Lcom/mojang/blaze3d/pipeline/RenderPipeline$UniformDescription;)Lfjm;
-
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 aLfjh;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 aLfjh;a(Ljava/lang/String;)Lfjm;
-
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 bLfjh;b(Ljava/lang/String;)Lfja;
-
addSamplerTexture
- Mappings:
Namespace Name Mixin selector named addSamplerTextureLnet/minecraft/client/gl/ShaderProgram;addSamplerTexture(Ljava/lang/String;Lcom/mojang/blaze3d/textures/GpuTexture;)Vintermediary method_62899Lnet/minecraft/class_5944;method_62899(Ljava/lang/String;Lcom/mojang/blaze3d/textures/GpuTexture;)Vofficial aLfjh;a(Ljava/lang/String;Lcom/mojang/blaze3d/textures/GpuTexture;)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(Lcom/mojang/blaze3d/vertex/VertexFormat$DrawMode;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;FF)Vintermediary method_60897Lnet/minecraft/class_5944;method_60897(Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;FF)Vofficial aLfjh;a(Lcom/mojang/blaze3d/vertex/VertexFormat$b;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 bLfjh;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 cLfjh;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 dLfjh;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 eLfjh;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 fLfjh;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 aLfjh;a(I)Lfku;
-