Package icyllis.arc3d.granite
Class ShaderCodeSource
java.lang.Object
icyllis.arc3d.granite.ShaderCodeSource
Manage all the fragment shader code snippets, used by Granite renderer.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
static final String
static final String
static final String
Apply one of 42 blend modes.static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
Public blend functions, these are pure functions.static final String
static final String
static final String
static final String
static final String
static final String
static final String
This can produce undefined results fromBlendMode.blend_divide(float[], float[], float[])
if values out of range.static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic void
emitDefinitions
(FragmentNode[] nodes, IdentityHashMap<String, String> added, Formatter code) findStage
(int stageId) static String
getMangledName
(String baseName, int manglingSuffix) static String
invoke_child
(FragmentNode child, String localCoords, String priorStageOutput, String blenderDstColor, FragmentNode outputNode, String outputBaseName, byte outputType, Formatter code) static String
invoke_node
(FragmentNode node, String localCoords, String priorStageOutput, String blenderDstColor, Formatter code)
-
Field Details
-
ARC_ERROR
- See Also:
-
ARC_PASSTHROUGH
- See Also:
-
ARC_SOLID_COLOR
- See Also:
-
ARC_RGB_OPAQUE
- See Also:
-
ARC_ALPHA_ONLY
- See Also:
-
ARC_COLOR_SPACE_TRANSFORM
- See Also:
-
ARC_LINEAR_GRAD_4_SHADER
- See Also:
-
ARC_LINEAR_GRAD_8_SHADER
- See Also:
-
ARC_RADIAL_GRAD_4_SHADER
- See Also:
-
ARC_RADIAL_GRAD_8_SHADER
- See Also:
-
ARC_ANGULAR_GRAD_4_SHADER
- See Also:
-
ARC_ANGULAR_GRAD_8_SHADER
- See Also:
-
ARC_IMAGE_SHADER
- See Also:
-
ARC_CUBIC_IMAGE_SHADER
- See Also:
-
ARC_HW_IMAGE_SHADER
- See Also:
-
ARC_DITHER_SHADER
- See Also:
-
BLEND_CLEAR
Public blend functions, these are pure functions.Implementation is the same as raster pipeline, but is vectorized and eliminates branches.
- See Also:
-
BLEND_SRC
- See Also:
-
BLEND_DST
- See Also:
-
BLEND_SRC_OVER
- See Also:
-
BLEND_DST_OVER
- See Also:
-
BLEND_SRC_IN
- See Also:
-
BLEND_DST_IN
- See Also:
-
BLEND_SRC_OUT
- See Also:
-
BLEND_DST_OUT
- See Also:
-
BLEND_SRC_ATOP
- See Also:
-
BLEND_DST_ATOP
- See Also:
-
BLEND_XOR
- See Also:
-
BLEND_PLUS
- See Also:
-
BLEND_PLUS_CLAMPED
- See Also:
-
BLEND_MINUS
- See Also:
-
BLEND_MINUS_CLAMPED
- See Also:
-
BLEND_MODULATE
- See Also:
-
BLEND_MULTIPLY
- See Also:
-
BLEND_SCREEN
- See Also:
-
BLEND_OVERLAY
- See Also:
-
BLEND_DARKEN
- See Also:
-
BLEND_LIGHTEN
- See Also:
-
BLEND_COLOR_DODGE
- See Also:
-
BLEND_COLOR_BURN
- See Also:
-
BLEND_HARD_LIGHT
- See Also:
-
BLEND_SOFT_LIGHT
- See Also:
-
BLEND_DIFFERENCE
- See Also:
-
BLEND_EXCLUSION
- See Also:
-
BLEND_SUBTRACT
- See Also:
-
BLEND_DIVIDE
This can produce undefined results fromBlendMode.blend_divide(float[], float[], float[])
if values out of range.- See Also:
-
BLEND_LINEAR_DODGE
- See Also:
-
BLEND_LINEAR_BURN
- See Also:
-
BLEND_VIVID_LIGHT
- See Also:
-
BLEND_LINEAR_LIGHT
- See Also:
-
BLEND_PIN_LIGHT
- See Also:
-
BLEND_HARD_MIX
- See Also:
-
BLEND_DARKER_COLOR
- See Also:
-
BLEND_LIGHTER_COLOR
- See Also:
-
BLEND_HUE
- See Also:
-
BLEND_SATURATION
- See Also:
-
BLEND_COLOR
- See Also:
-
BLEND_LUMINOSITY
- See Also:
-
ARC_BLEND
Apply one of 42 blend modes.- See Also:
-
ARC_PORTER_DUFF_BLEND
- See Also:
-
-
Constructor Details
-
ShaderCodeSource
public ShaderCodeSource()
-
-
Method Details
-
findStage
-
getMangledName
-
invoke_node
-
invoke_child
public static String invoke_child(FragmentNode child, String localCoords, String priorStageOutput, String blenderDstColor, FragmentNode outputNode, String outputBaseName, byte outputType, Formatter code) -
emitDefinitions
public static void emitDefinitions(FragmentNode[] nodes, IdentityHashMap<String, String> added, Formatter code)
-