物理引擎(刚体属性)(1)

写在前面

刚体是在使用物理引擎过程中经常用到的一个组件,刚体可以使物体在物理作用力的控制下运动,任何一个非角色对象,如果希望通过作用力及扭转力进行仿真运动,都需要挂在一个刚体组件,刚体设置了许多属性,变量和相关方法。

刚体属性的介绍

1.Mass(质量):
Mass属性表示刚体的质量,其数据类型是float默认值是1,在开发人员进行项目开发的时候一般这个属性的属性值应该设置成0.1~10.0,这样才符合日常生活,这个属性可以通过保持物体与物体之间的质量比来力高其物理仿真程度。

2.Drag(阻力):
这里面的阻力与物理材质球里面的阻力不一样,这里的阻力是指物体在移动过程中的阻力,当设置了这个属性,不管物体想那个方向移动,都会受到相同的Drag影响,类型为float默认值是0,其作用方向与物体的运动方向相反,通过设置这个属性,可以仿真制作羽毛与石子下落的场景。

3.Augular(旋转阻力):
旋转阻力是用来阻碍物体旋转的属性,如果将其设置为0,当给物体添加一个瞬时力的时候,物体将永不停歇的一直旋转下去,若不是0,则物体的旋转速度会越来越慢。

4.Use Gravity(是否使用重力);

5.Is Kinematic(是否遵循运动学规律):
该属性是指挂载这个组建的游戏对象是否遵循运动学规律,其数据类型是bool,默认是false,需要注意的是,当该属性值为true的时候,表示挂载这个组件的游戏对象只受脚本与动画的影响,作用力、关节、和碰撞都不会对其产生任何作用,但是这个物体还是会影响其他物体的运动状态,只有其值设为false时才能正常的进行物理计算。
应用:在射击类型的游戏中,当子弹打中敌人,敌人倒地,这个时候 Is Kinematic设为true。
6.Collision Dection(碰撞检测模式):

这个属性有四个模式Discrete、continuous、Continuous Dynamic、Continuous Speculative,
默认的模式是占用资源较少的Discrete,对于运动较慢,或者静止的物体建议使用这种模式,而对于体积较小并且告诉运动的物体建议使用Continuois Dynamic模式,而被使用了连续监测模式的物体所撞击的物体,则应该使用Continuous Dynamic模式。

使用检测其实是使用了两个不同的变量一个是contactOffset另一个是restOffset,添加这两个变量的初衷是为了让SDK能更好的控制相互靠近的物体,尽快将物体稳定下来;
我们可以粗俗一点的理解,contactOffset的作用相当于是把物体的碰撞形体变得肥了那么一点点,这样SDK可以更早以及更持续的获取两个物体之间的碰撞信息;
而restOffset的作用则是允许两个物体的嵌入深度,只要嵌入的不够深,那么SDK不会用力把物体分开。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值