CubeTextureLoader.js 1006 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. /**
  2. * @author mrdoob / http://mrdoob.com/
  3. */
  4. THREE.CubeTextureLoader = function ( manager ) {
  5. this.manager = ( manager !== undefined ) ? manager : THREE.DefaultLoadingManager;
  6. };
  7. THREE.CubeTextureLoader.prototype = {
  8. constructor: THREE.CubeTextureLoader,
  9. load: function ( urls, onLoad, onProgress, onError ) {
  10. var texture = new THREE.CubeTexture( [] );
  11. var loader = new THREE.ImageLoader();
  12. loader.setCrossOrigin( this.crossOrigin );
  13. loader.setPath( this.path );
  14. var loaded = 0;
  15. function loadTexture( i ) {
  16. loader.load( urls[ i ], function ( image ) {
  17. texture.images[ i ] = image;
  18. loaded ++;
  19. if ( loaded === 6 ) {
  20. texture.needsUpdate = true;
  21. if ( onLoad ) onLoad( texture );
  22. }
  23. }, undefined, onError );
  24. }
  25. for ( var i = 0; i < urls.length; ++ i ) {
  26. loadTexture( i );
  27. }
  28. return texture;
  29. },
  30. setCrossOrigin: function ( value ) {
  31. this.crossOrigin = value;
  32. },
  33. setPath: function ( value ) {
  34. this.path = value;
  35. }
  36. };
粤ICP备19079148号