Record Class ShaderMultiProcessor
java.lang.Object
java.lang.Record
foundry.veil.api.client.render.shader.processor.ShaderMultiProcessor
- All Implemented Interfaces:
ShaderPreProcessor
public record ShaderMultiProcessor(ShaderPreProcessor[] processors)
extends Record
implements ShaderPreProcessor
-
Nested Class Summary
Nested classes/interfaces inherited from interface foundry.veil.api.client.render.shader.processor.ShaderPreProcessor
ShaderPreProcessor.Context, ShaderPreProcessor.IncludeOverloadStrategy, ShaderPreProcessor.MinecraftContext, ShaderPreProcessor.SodiumContext, ShaderPreProcessor.VeilContext -
Field Summary
Fields inherited from interface foundry.veil.api.client.render.shader.processor.ShaderPreProcessor
NOOP -
Constructor Summary
ConstructorsConstructorDescriptionShaderMultiProcessor(ShaderPreProcessor[] processors) Creates an instance of aShaderMultiProcessorrecord class. -
Method Summary
Modifier and TypeMethodDescriptionfinal booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.voidmodify(ShaderPreProcessor.Context ctx, io.github.ocelot.glslprocessor.api.node.GlslTree tree) Modifies the specified shader source input.voidprepare()Called once when a shader is first run through the pre-processor.Returns the value of theprocessorsrecord component.final StringtoString()Returns a string representation of this record class.
-
Constructor Details
-
ShaderMultiProcessor
Creates an instance of aShaderMultiProcessorrecord class.- Parameters:
processors- the value for theprocessorsrecord component
-
-
Method Details
-
prepare
public void prepare()Description copied from interface:ShaderPreProcessorCalled once when a shader is first run through the pre-processor.- Specified by:
preparein interfaceShaderPreProcessor
-
modify
public void modify(ShaderPreProcessor.Context ctx, io.github.ocelot.glslprocessor.api.node.GlslTree tree) throws IOException, io.github.ocelot.glslprocessor.api.GlslSyntaxException, io.github.ocelot.glslprocessor.lib.anarres.cpp.LexerException Description copied from interface:ShaderPreProcessorModifies the specified shader source input.- Specified by:
modifyin interfaceShaderPreProcessor- Parameters:
ctx- Context for modifying shaderstree- The GLSL source code tree to modify- Throws:
IOException- If any error occurs while editing the sourceio.github.ocelot.glslprocessor.api.GlslSyntaxException- If there was an error in the syntax of the source codeio.github.ocelot.glslprocessor.lib.anarres.cpp.LexerException- If an error occurs during shader C preprocessing
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
processors
Returns the value of theprocessorsrecord component.- Returns:
- the value of the
processorsrecord component
-