UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

29 lines (28 loc) 897 B
"use strict"; import { UpdateMatNode } from "./_Base"; import { NodeParamsConfig, ParamConfig } from "../utils/params/ParamsConfig"; class ClipPropertiesMatParamsConfig extends NodeParamsConfig { constructor() { super(...arguments); /** @param clipIntersection */ this.clipIntersection = ParamConfig.BOOLEAN(0); /** @param clipShadows */ this.clipShadows = ParamConfig.BOOLEAN(1); } } const ParamsConfig = new ClipPropertiesMatParamsConfig(); export class ClipPropertiesMatNode extends UpdateMatNode { constructor() { super(...arguments); this.paramsConfig = ParamsConfig; } static type() { return "clipProperties"; } async cook(inputMaterials) { const inputMaterial = inputMaterials[0]; inputMaterial.clipIntersection = this.pv.clipIntersection; inputMaterial.clipShadows = this.pv.clipShadows; this.setMaterial(inputMaterial); } }