美文网首页
[SceneKit专题-OC]2.physics物理效果

[SceneKit专题-OC]2.physics物理效果

作者: 严兵胜 | 来源:发表于2017-09-07 17:23 被阅读0次

说明

  • 本系列文章的学习首先要感谢史前图腾的共享精神,在他的系列文章中有详细的解释,但是他的代码都是Swift写的.并且代码的解释比较少,
  • 在这里我提供了demo-OC版供大家参考和学习,基础知识会一一为大家解释,但是OC版的demo只提供最终合集,方便一次到位减少打开工程的次数
  • demo地址:
    OC - 地址
    swif-地址

physics body物理形体

Static(静态的):形体不移动:当其他物体能够与该类型碰撞时,该类型自身不受任何力和碰撞的影响,该类型用于墙壁和大质量不可移动的岩石;
Dynamic(动态的):可以被力和碰撞影响,用于可移动的桌椅,杯子;
Kinematic(运动学的):类型于静态形体,不受力和碰撞影响.但你可以移动该类型,移动过程中与其他动态形体碰撞.用于移动的电梯或可以开关的门;
physics shapes物理形状

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

image.png

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

    node.physicsBody = [SCNPhysicsBody bodyWithType:SCNPhysicsBodyTypeDynamic shape:nil];  // 设置节点中几何体的 受力状态

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

forces力

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

image.png

torque力矩

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

相关文章

  • [SceneKit专题-OC]2.physics物理效果

    说明 本系列文章的学习首先要感谢史前图腾的共享精神,在他的系列文章中有详细的解释,但是他的代码都是Swift写的....

  • [SceneKit专题]2.physics物理效果

    说明 本系列文章是对<3D Apple Games by Tutorials>一书的学习记录和体会此书对应的代码地...

  • 2-physics物理效果

    文章选自掘金苹果API搬运工的文章[SceneKit专题]2-physics物理效果主要记录自己在学习ARKit的...

  • [SceneKit专题-OC]1.Hello SceneKit

    本系列文章的学习首先要感谢史前图腾的共享精神,在他的系列文章中有详细的解释,但是他的代码都是Swift写的.并且代...

  • [SceneKit]目录

    基础篇[SceneKit]搭建Scene3D场景(一)[SceneKit]物理仿真模拟(二)[SceneKit]场...

  • [SceneKit专题-OC]4.Particle System

    说明 本系列文章的学习首先要感谢史前图腾的共享精神,在他的系列文章中有详细的解释,但是他的代码都是Swift写的....

  • [SceneKit]物理仿真模拟(二)

    SceneKit的物理引擎是很强大的, 你只需要告诉引擎你想使用的物理学效果, 接下来的一切都有引擎来完成, 模拟...

  • SceneKit 物理碰撞

    前言 SceneKit使用SCNPhysicsWorld来管理这种物理模拟,让物体的碰撞、连接、掉落等具有真实感。...

  • 1-Hello-SceneKit

    文章选自掘金苹果API搬运工的文章[SceneKit专题]1-Hello-SceneKit主要记录自己在学习ARK...

  • ios 3D引擎 SceneKit 开发(1) --起始篇

    SceneKit 是一个OC 框架,开始之前,先熟悉一下SceneKit 的三维坐标系: 很清楚的看到,Scene...

网友评论

      本文标题:[SceneKit专题-OC]2.physics物理效果

      本文链接:https://www.haomeiwen.com/subject/kngijxtx.html