我正在学习三个js,并尝试在three.js r98中为gltf对象旋转设置动画。但是我收到一个控制台错误:变量obj未定义,但是在初始化脚本之前在顶部声明了该变量,因此它应该是全局权限。我不明白为什么这不起作用。如果我使用intern
,它可以工作。但是,如果还有其他不应旋转的对象,这将没有用^^。变量模型具有相同的错误。使用MLTD加载程序,它可以工作:Loop Rotation on any axis for a 3D obj Three js。我尝试使用scene.rotation.y += 0.01;
而不是gltf.scene
,但是有相同的错误。
非常感谢您的帮助。
gltf.asset
答案 0 :(得分:1)
问题在于obj
仅在onLoad()
的{{1}}回调触发时设置。由于这是以异步方式发生的,因此应将以下代码行放入GLTFLoader.load()
函数中以解决问题。
animate()