Client API. The Codename One framework your app is built on: this runs on the device, not in a backend.

package com.codename1.gpu.shader

Portable custom shading for com.codename1.gpu.

A ShaderNode is one value of a shader – a constant, an input such as the world position or the time, a texture sample, or math on other nodes. A ShaderMaterial attaches graphs of them to hooks of the engine’s own shader (VERTEX_OFFSET, BASE_COLOR, NORMAL, METALLIC, ROUGHNESS, EMISSIVE, DISCARD), so custom surfaces are still lit, shadowed and fogged. Every backend prints the same graph in its own language through ShaderEmitter: GLSL on Android, the browser, the simulator and Linux, Metal on Apple platforms and HLSL on Windows.

Types

class ShaderEmitterPrints ShaderNode graphs as statements of one shading language.
class ShaderEvaluatorEvaluates ShaderNode graphs on the CPU, with the same results the GPU computes from the same graph.
class ShaderMaterialCustom shading for a com.codename1.gpu.Material: a set of ShaderNode graphs, each replacing one input of the engine’s own shader.
class ShaderNodeOne value in a portable shader: a constant, a uniform, a built-in input such as the world position, a texture sample, or an operation on other nodes.
enum ShaderTypeThe value type of a ShaderNode.