NodeInput.js 896 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. /**
  2. * @author sunag / http://www.sunag.com.br/
  3. */
  4. THREE.NodeInput = function(type, params) {
  5. THREE.NodeTemp.call( this, type, params );
  6. };
  7. THREE.NodeInput.prototype = Object.create( THREE.NodeTemp.prototype );
  8. THREE.NodeInput.prototype.constructor = THREE.NodeInput;
  9. THREE.NodeInput.prototype.generate = function( builder, output, uuid, type ) {
  10. var material = builder.material;
  11. uuid = builder.getUuid( uuid || this.uuid );
  12. type = type || this.type;
  13. var data = material.getNodeData( uuid );
  14. if (builder.isShader('vertex')) {
  15. if (!data.vertex) {
  16. data.vertex = material.getVertexUniform( this.value, type );
  17. }
  18. return builder.format( data.vertex.name, type, output );
  19. }
  20. else {
  21. if (!data.fragment) {
  22. data.fragment = material.getFragmentUniform( this.value, type );
  23. }
  24. return builder.format( data.fragment.name, type, output );
  25. }
  26. };