ARKit开发

2-physics物理效果

2020-06-06  本文已影响0人  095b62ead3cd

文章选自掘金苹果API搬运工的文章[SceneKit专题]2-physics物理效果
主要记录自己在学习ARKit的过程中看到的好的文章,避免到时候链接失效无法找到原文的情况,非常感谢原博主的辛勤付出,也在此分享出来跟大家一起学习。

physics body物理形体

physics shapes物理形状

物理形状决定了物理引擎在处理碰撞时的形状检测. 为了让物理模拟器运行的更快,最好将物理形状设定为简单的方形,球形或其他系统提供的原始形状,大略匹配节点外观就行了


物理形状

如果想要添加更多细节到物理形状,可以手动创建SCNPhysicsShape并传入,否则可使用nil

geometryNode.physicsBody = SCNPhysicsBody(type: .Dynamic, shape: nil)

Scene Kit中的scene默认打开了重力,当设定过动态形体后,物体就会受到重力影响下落

forces力

力使用3维向量SCNVector3表示,使用applyForce(_: atPosition: impluse:)方法来添加一个力,并指定位置.一个力可以同时影响线速度和角速度. impluse脉冲状只作用一次,比如踢一个球,非脉冲状的则可以持续作用. Position位置可以影响力的作用效果


力的作用

torque力矩

力矩使用4维向量SCNVector4表示,使用applyTorque(_: impulse:)来添加一个力矩,力矩只影响角动量. x-,y-,z-指定旋转轴,w-指定旋转角度也就是大小值 Scene Kit使用国际单位制,因此质量单位是kg千克,力的单位是N牛,脉冲单位是N-s牛秒,力矩单位是N-m牛米.


力矩
上一篇 下一篇

猜你喜欢

热点阅读