我有一个问题,需要将一个节点旋转多次。我正在制作一个滚动球的游戏,虽然我可以沿一个轴旋转球,或者通过相同的角度沿两个轴旋转,但我无法以部分角度旋转。
示例:
// Roll right 90 -
SCNNode.pivot = SCNMatrix4MakeRotation(Float(M_PI_2), 0, 1, 0)
// Roll right 180 -
SCNNode.pivot = SCNMatrix4MakeRotation(Float(M_PI_2) * 2, 0, 1, 0)
// Roll up 90 -
SCNNode.pivot = SCNMatrix4MakeRotation(Float(M_PI_2), 1, 0, 0)
// Roll up & right 90 -
SCNNode.pivot = SCNMatrix4MakeRotation(Float(M_PI_2), 1, 1, 0)
所有这些都可以运行,但是如果我需要将球滚动向右180度并向上90度,我就卡住了。
即使有一种方法可以将向量相加,那也对我没有作用。
非常感谢任何帮助。