quaternions

    1热度

    1回答

    我一直在使用6dof LSM6DS0 IMU单元(带加速计和陀螺仪)。我试图计算围绕所有三个轴的旋转角度。我尝试了可能的方法,但没有按预期得到结果。 方法尝试: (I)Complementatry过滤器的方法 - 我能够得到使用链接Angle comutation method提供的公式的角度。 但问题是角度并不一致,并且漂移很大。此外,当IMU围绕一个轴旋转时,在其他轴上计算的角度摆动太多。 (

    1热度

    1回答

    我正在为使用LWJGL和OpenGL 3.2的OpenGL编写Java游戏引擎。 无论何时移动鼠标以旋转相机,它都会增加滚动以及俯仰和偏航。 相机代码 public Matrix4f getViewMatrix() { getParent().getTransform().getWorldRot().mul(rotation, (Quaternion) null).toRotationM

    0热度

    1回答

    我试图为我的FPS相机动画从q1到q2的slerp。我在我的世界的某个地方有一个目标,我想让相机从当前的轴上平移,看看我的目标。从我理解的方式来做到这一点将是计算一个四元数代表我目前的(axis, rotation)和第二代表我的最后(axis, rotation)然后每帧增量我插入之间的两个从0到1.这是正确的想法? 我不明白的是如何计算这些开始和结束四元数? 我的相机是非常标准的,并且具有通常

    0热度

    1回答

    我正在写一个我正在制作的3D游戏的敌人类,并且正在努力让敌人跟随玩家。我希望敌人基本上在玩家的方向上每帧稍微旋转一下,然后每帧向前移动一下。我尝试使用Lerping来完成此操作,如下面的代码所示,但我似乎无法使其工作。在玩时,敌人甚至不会出现在我的视野中,也不会出现在我的视野中。下面是我的敌人级别下面的代码。 注意:p是对我追逐的玩家对象的引用,world是敌方物体的世界矩阵,quaternion

    2热度

    1回答

    我想要在cannonJS身体上实现一个类似于移动的太空飞船。 (我真的是一个初学者) 我发现了一些例子,但没有一个是我正在寻找的。 因为我知道移动物体的正确方法是改变速度。 这里是我在这里所做的:http://codepen.io/Tomo0613/pen/xVjqqKenter code here 但我绝对有理解四元组的问题。 有没有办法更新,根据其四元数的身体向量,当我旋转它,或者那总是与世界

    0热度

    1回答

    我尝试在统一论坛发帖,但它一直在等待审核,所以我在这里发布它希望得到一些更直接的反馈。 我有4个物体,两个平面和两个箭头。一个箭头指向其中一个平面,我希望第二个箭头与第一个箭头相匹配,但是相对于第二个平面。我的意思是,如果第一个箭头相对于第一个平面向右移动1个单位,则第二个箭头应相对于第二个平面向右移动1个单位。我得到了正确的工作,但我无法弄清楚如何匹配轮换。有些旋转轴在某些时候可以正常工作,但是

    0热度

    1回答

    我在创建THREE.js中的相机Tween时遇到了一些麻烦,特别是在动画结束和开始时,总会出现相机“跳跃”,这意味着一旦动画开始并且一次相机闪烁动画结束。作为参考,我正在做的是: 相机俯视从上面的情景。 当用户点击场景中的某个元素时,摄像头会对其进行放大(通过TWEEN),当距离足够近时,OrbitControls目标将变为所选元素的质心,并且自动旋转开始,所以用户看到元素在屏幕中心旋转。 当用户

    3热度

    1回答

    我正在寻找应用的偏移一组Euler旋转的正确途径。我想有一个变换,其中给定的一组特定的欧拉角(X1,Y1,Z1),如果我改变他们,我会得到的(0,0,0)欧拉序列。所有其他欧拉序列(xi,yi,zi)转化后的行为如(x1,y1,z1)为(0,0,0)。 背景: 我使用Oculus公司DK2 HMD显示虚拟环境(面颊5,Python的2.7.5),同时使用威康运动捕捉系统(2的Nexus)来更新的位

    2热度

    1回答

    我想使用Tango设备捕获点云图像并将它们保存到文件中。从那里我可以将单个的点云拼凑在一起,形成建筑物内部的完整3D图像。 我已经修改了PointCloudJava应用程序(google tango的官方github页面)以包含一个按钮,其中每次按下它时,当前可查看的点云都会以二进制格式保存到文件以及其姿态数据中。 外部应用程序将二进制点云转换为人可读的.PTS格式。以下是这一个片段.PTS文件.

    0热度

    1回答

    我正在使用Unity的手机游戏。它涉及使用陀螺仪来获取手机在空间中的方向/旋转。我一直在比较C#中的两个四元数的困难。这里是我的代码: transform.rotation = Input.gyro.attitude; // Take the gyroscope rotation data and copy it transform.rotation.Set(0, 0, 0, 1); /