如何在三个.js中异步加载多个纹理?



使用回调加载单个纹理很容易,例如:

var loader = new THREE.TextureLoader();
var texture1 = loader.load("https://i.imgur.com/UiTMJzv.png", process);
//called only after texture1 is loaded
function process(){
}

问题是如何异步(而不是按顺序(加载多个纹理,并且仅在加载所有纹理后才调用处理函数?

你可以使用THREE。加载管理器为此:

var manager = new THREE.LoadingManager( function() {
// this onLoad callback is executed when both textures are loaded
} );
var loader = new THREE.TextureLoader( manager );
var texture1 = loader.load( 'texture1.png' );
var texture2 = loader.load( 'texture2.png' );

最新更新