UNPKG

@lightningjs/renderer

Version:
37 lines 982 B
/** * Shader Controller Class * * @remarks * This class is used to control shader props. */ export class ShaderController { type; shader; resolvedProps; props; constructor(type, shader, props, stage) { this.type = type; this.shader = shader; this.resolvedProps = props; const keys = Object.keys(props); const l = keys.length; const definedProps = {}; for (let i = 0; i < l; i++) { const name = keys[i]; Object.defineProperty(definedProps, name, { get: () => { return this.resolvedProps[name]; }, set: (value) => { this.resolvedProps[name] = value; stage.requestRender(); }, }); } this.props = definedProps; } getResolvedProps() { return this.resolvedProps; } } //# sourceMappingURL=ShaderController.js.map