[英]3D (iOS SceneKit), switch transforms of camera and another object
我有一个带有照相机和另一个对象的场景:3D角色模型。
使用姿势估计算法中的方向信息(用于翻译的vec3和用于旋转的vec4四元数),对我的相机的变换进行平移和旋转以聚焦于此字符,该字符处于(0,0,0)且旋转0 。 这可以正确正确地工作,但是我想“反转”这些值,以便使用输入影响角色对象,而将摄影机放置在0、0、0且旋转0的位置。
我觉得我应该围绕原点旋转提供的摄影机转换矩阵以创建myObjectTransform ,然后将摄影机值清零,然后简单地将myObjectTransform用作角色对象的转换。 但是,如果执行此操作,我的输入平移和旋转值将不会像我希望的那样影响场景-旋转似乎朝错误的方向前进,甚至平移位置也似乎不正确。
听起来应该很容易,但是我显然缺少了一些东西。 有人可以帮忙吗?
我使用SCNMatrix4Invert解决了这个问题-相机矩阵的逆正是我想要的。 但是,我忘记了在最初给定的平移和旋转方向上施加了180度的额外X旋转。
因此,尽管看起来有些凌乱,但我的过程是:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.