loader.load( 'path/to/collada.dae', function ( collada ) {
// This function is called, when collada were loaded.
});
但是当纹理被加载时如何调用函数呢?
loader.load( 'path/to/collada.dae', function ( collada ) {
// This function is called, when collada were loaded.
});
但是当纹理被加载时如何调用函数呢?
ColladaLoader 类使用 THREE.ImageUtils 在第 3087 行加载纹理。ImageUtils 类可以在加载图像时提供回调,但 ColladaLoader 不使用它。
您可以通过遍历 collada 场景来寻找图像来创建解决方法。这是一个现场演示。相关代码为:
THREE.SceneUtils.traverseHierarchy( dae.scene, function (object) {
if (object.material && object.material.map) {
object.material.map.image.onload = function() {
console.log('image loaded');
object.material.map.needsUpdate = true;
};
}
});
当加载每个纹理时,这会将“图像加载”打印到控制台。