FogRangeNode.js 527 B

123456789101112131415161718192021222324252627
  1. import FogNode from './FogNode.js';
  2. import { smoothstep, negate, positionView } from '../shadernode/ShaderNodeElements.js';
  3. class FogRangeNode extends FogNode {
  4. constructor( colorNode, nearNode, farNode ) {
  5. super( colorNode );
  6. this.nearNode = nearNode;
  7. this.farNode = farNode;
  8. }
  9. generate( builder ) {
  10. this.factorNode = smoothstep( this.nearNode, this.farNode, negate( positionView.z ) );
  11. return super.generate( builder );
  12. }
  13. }
  14. FogRangeNode.prototype.isFogRangeNode = true;
  15. export default FogRangeNode;