starry / backend /libs /three /loaders /CubeTextureLoader.js
k-l-lambda's picture
feat: add Python ML services (CPU mode) with model download
2b7aae2
import { ImageLoader } from './ImageLoader.js';
import { CubeTexture } from '../textures/CubeTexture.js';
import { Loader } from './Loader.js';
class CubeTextureLoader extends Loader {
constructor(manager) {
super(manager);
}
load(urls, onLoad, onProgress, onError) {
const texture = new CubeTexture();
const loader = new ImageLoader(this.manager);
loader.setCrossOrigin(this.crossOrigin);
loader.setPath(this.path);
let loaded = 0;
function loadTexture(i) {
loader.load(
urls[i],
function (image) {
texture.images[i] = image;
loaded++;
if (loaded === 6) {
texture.needsUpdate = true;
if (onLoad) onLoad(texture);
}
},
undefined,
onError
);
}
for (let i = 0; i < urls.length; ++i) {
loadTexture(i);
}
return texture;
}
}
export { CubeTextureLoader };