Interface ShaderModification
- All Known Implementing Classes:
InputShaderModification,ReplaceShaderModification,SimpleShaderModification,VertexShaderModification
@Internal
public interface ShaderModification
Allows shader source files to be modified without overwriting the file.
-
Nested Class Summary
Nested Classes -
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionintInjects this modification into the specified shader source.static ShaderModification
-
Field Details
-
VERSION_PATTERN
-
OUT_PATTERN
-
IN_PATTERN
-
UNIFORM_PATTERN
-
RETURN_PATTERN
-
PLACEHOLDER_PATTERN
-
APPLY_VERSION
static final int APPLY_VERSIONWhether the version is required and will be applied- See Also:
-
ALLOW_OUT
static final int ALLOW_OUTWhether [OUT] is a valid command- See Also:
-
-
Method Details
-
inject
Injects this modification into the specified shader source.- Parameters:
source- The source to inject intoflags- The flags to use when injecting- Returns:
- The injected shader source
- Throws:
IOException- If an error occurs with the format or applying the modifications
-
getPriority
int getPriority()- Returns:
- The priority of this modification. A higher priority will be applied before a lower priority modification
-
parse
static ShaderModification parse(String input, boolean vertex) throws ShaderModificationSyntaxException
-