在ThreeJS中预加载纹理和图像?

Yve*_*her 2 javascript textures preload three.js

我想询问是否有一个简单的解决方案来预装ThreeJs中的纹理和图像.我将它们全部加载到一个数组中:myTextureArray.push(new THREE.ImageUtils.loadTexture('../ textures/floor_red.jpg');

如何检查是否以及何时成功加载所有纹理?

这是一个较旧的版本链接:http://museum.baraq.de/

感谢帮助!

Fal*_*ele 7

在Three.js中有一个Loading Manager,可用于跟踪加载的纹理或对象.

示例实现:

var textureManager = new THREE.LoadingManager();
textureManager.onProgress = function ( item, loaded, total ) {
    // this gets called after any item has been loaded
};

textureManager.onLoad = function () {
    // all textures are loaded
    // ...
};

var textureLoader = new THREE.ImageLoader( textureManager );
var myTextureArray = [];
var myTexture = new THREE.Texture();
myTextureArray.push( myTexture );

textureLoader.load( 'my/texture.jpg', function ( image ) {
    myTexture.image = image;
} );
Run Code Online (Sandbox Code Playgroud)

测试在Three.js r71.