未定义GLTFLoader-THREE.js
我正在尝试使用three.js和anime.js创建一个带有可滚动动画的网站。到目前为止,一切都处于工作状态(这意味着我在一个空间中有一个立方体,当我滚动时,我可以通过相机看到——立方体和相机在不同的关键帧中移动,直到它们的时间线结束。我的下一个任务是引入一个blender对象来替换立方体。THREEjs文档建议我在尝试实现这一点时使用GLTFLoader: 我收到了错误消息: 未定义GLTFLoader。 以下是它引用的代码:未定义GLTFLoader-THREE.js,three.js,gltf,Three.js,Gltf,我正在尝试使用three.js和anime.js创建一个带有可滚动动画的网站。到目前为止,一切都处于工作状态(这意味着我在一个空间中有一个立方体,当我滚动时,我可以通过相机看到——立方体和相机在不同的关键帧中移动,直到它们的时间线结束。我的下一个任务是引入一个blender对象来替换立方体。THREEjs文档建议我在尝试实现这一点时使用GLTFLoader: 我收到了错误消息: 未定义GLTFLoader。 以下是它引用的代码: var loader = new GLTFLoader();
var loader = new GLTFLoader();
loader.load(
'/assets/logotext.glb',
function ( gltf ) {
// called when the resource is loaded
scene.add( gltf.scene );
},
function ( xhr ) {
// called while loading is progressing
console.log( ( xhr.loaded / xhr.total * 100 ) + '% + loaded' );
},
function ( error ) {
// called when loading has errors
console.error( 'An error happened', error );
},
);
以下是我如何在html中包含脚本:
<script src="\node_modules\animejs\lib\anime.min.js"></script>
<script src="\node_modules\three\build\three.js"></script>
<script src="\node_modules\three\examples\js\loaders\GLTFLoader.js"></script>
<script src="index.js"></script>
</body>
</html>
如果我没有包含足够的内容,可以在此处找到完整的文件:
如果有任何其他部分,你需要看到的只是说,我可以编辑的问题
谢谢
var loader = new THREE.GLTFLoader();
您应该使用其父类构造函数即“三”构造函数实例化GLTFLoader构造函数,如我上面所示。这将解决问题。尝试使用
THREE
命名空间创建GLTFLoader
。因此var loader=new THREE.GLTFLoader()
。谢谢!如果我在stackoverflow上结束每一次交换时都感觉自己像个傻瓜,那么我就不会学习了(:现在一切正常。我花了这么多时间试图更改src和import方法以使gltfloader工作!非常感谢您提供此解决方案!