Three.js 三次旋转
我正在做一个虚拟现实游戏,在3d旋转中我的头都碎了 在视频1中:我将辅助块设置为组位置和四元数。如果我使用控制器旋转组,我仅通过复制四元数和位置设置的黑色辅助对象的位置就可以了 但是,在视频2中,当我将辅助对象(黑色块)偏移到第一个子对象的本地位置(视频1中位于其上方的位置)时,初始位置是正常的,但当我开始旋转组并尝试同步位置和四元数时,似乎缺少一个偏移 你知道什么是正确的术语吗?我如何在谷歌上搜索并了解更多信息?或者你知道怎么解决这个问题吗 编辑:已成功修复此问题!提出了以下解决方案:Three.js 三次旋转,three.js,quaternions,react-three-fiber,Three.js,Quaternions,React Three Fiber,我正在做一个虚拟现实游戏,在3d旋转中我的头都碎了 在视频1中:我将辅助块设置为组位置和四元数。如果我使用控制器旋转组,我仅通过复制四元数和位置设置的黑色辅助对象的位置就可以了 但是,在视频2中,当我将辅助对象(黑色块)偏移到第一个子对象的本地位置(视频1中位于其上方的位置)时,初始位置是正常的,但当我开始旋转组并尝试同步位置和四元数时,似乎缺少一个偏移 你知道什么是正确的术语吗?我如何在谷歌上搜索并了解更多信息?或者你知道怎么解决这个问题吗 编辑:已成功修复此问题!提出了以下解决方案: 我可
我可以将其缩小为以下内容:您要查找的主题是3D变换层次。这意味着要指定三维对象相对于彼此的变换(平移、旋转和缩放)。这样的系统需要区分不同的坐标空间(如局部空间或世界空间) 可以将辅助对象添加到对象中,使其自动继承所有三维变换。这样,您根本不必费心复制转换
如果出于某些原因不想这样做,则必须在世界空间中提取转换数据。在轮换上下文中,
three.js
提供了此任务。感谢您的回复!我曾考虑过附加对象,但是使用react three fiber不可能,因为它会将网格移动到其范围之外。我提出了以下建议,甚至把范围缩小到了决赛。