You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					26 lines
				
				460 B
			
		
		
			
		
	
	
					26 lines
				
				460 B
			| 
											3 years ago
										 | import TempNode from '../core/Node.js'; | ||
|  | import { mul, floor, reciprocal } from '../shadernode/ShaderNodeBaseElements.js'; | ||
|  | 
 | ||
|  | class PosterizeNode extends TempNode { | ||
|  | 
 | ||
|  | 	constructor( sourceNode, stepsNode ) { | ||
|  | 
 | ||
|  | 		super(); | ||
|  | 
 | ||
|  | 		this.sourceNode = sourceNode; | ||
|  | 		this.stepsNode = stepsNode; | ||
|  | 
 | ||
|  | 	} | ||
|  | 
 | ||
|  | 	construct() { | ||
|  | 
 | ||
|  | 		const { sourceNode, stepsNode } = this; | ||
|  | 
 | ||
|  | 		return mul( floor( mul( sourceNode, stepsNode ) ), reciprocal( stepsNode ) ); | ||
|  | 
 | ||
|  | 	} | ||
|  | 
 | ||
|  | } | ||
|  | 
 | ||
|  | export default PosterizeNode; |