Class SimpleShaderModification

java.lang.Object
foundry.veil.impl.client.render.shader.modifier.SimpleShaderModification
All Implemented Interfaces:
ShaderModification
Direct Known Subclasses:
VertexShaderModification

@Internal public class SimpleShaderModification extends Object implements ShaderModification
  • Constructor Details

    • SimpleShaderModification

      public SimpleShaderModification(int version, int priority, net.minecraft.resources.ResourceLocation[] includes, @Nullable @Nullable String output, @Nullable @Nullable String uniform, ShaderModification.Function[] functions)
  • Method Details

    • inject

      public void inject(io.github.douira.glsl_transformer.ast.transform.ASTParser parser, io.github.douira.glsl_transformer.ast.node.TranslationUnit tree, VeilJobParameters parameters) throws IOException
      Description copied from interface: ShaderModification
      Injects this modification into the specified shader source.
      Specified by:
      inject in interface ShaderModification
      Parameters:
      parser - The parser instance
      tree - The source to modify
      parameters - The parameters to use when injecting
      Throws:
      IOException - If an error occurs with the format or applying the modifications
    • fillPlaceholders

      public String fillPlaceholders(String code)
    • getPlaceholder

      protected String getPlaceholder(String key)
    • priority

      public int priority()
      Specified by:
      priority in interface ShaderModification
      Returns:
      The priority of this modification. A higher priority will be applied before a lower priority modification
    • getOutput

      public String getOutput()