horsestudiowebgl
v0.1.1
Published
Preset-driven WebGL shader toolkit from Horse Studio.
Maintainers
Readme
horsestudiowebgl
Preset-driven WebGL shader toolkit from Horse Studio.
Install
npm i horsestudiowebglQuick Start
import {
createDefaultControls,
createShaderPreset,
listShaderPresets,
} from 'horsestudiowebgl'
const presets = listShaderPresets()
const preset = createShaderPreset('miracle-led-ripples')
const controls = createDefaultControls('miracle-led-ripples')Export Current Live Controls
When using the Horse Studio UI, the NPM Export panel outputs a snippet that includes:
- The selected preset id.
- The currently visible live control values.
- A merged
defaultControlsobject ready to paste.
Example:
import { createShaderPreset } from 'horsestudiowebgl'
const liveControls = {
speed: 1.1,
curves: 0.58,
colorA: '#7dd3fc',
}
const basePreset = createShaderPreset('miracle-led-ripples')
const shader = {
...basePreset,
defaultControls: {
...basePreset.defaultControls,
...liveControls,
},
}API
listShaderPresets()- Returns lightweight metadata list:
{ id, name, mode }[]
- Returns lightweight metadata list:
getShaderPreset(shaderId)- Returns full preset metadata or
null
- Returns full preset metadata or
createDefaultControls(shaderId)- Returns merged default controls for a preset
createShaderPreset(shaderId)- Returns preset object with:
id,name,mode,fragmentShader,defaultControls,families,components,summary
Local Package Checks
npm run check:packagePublish
npm publish