刚体、碰撞

来自c2wiki
跳转至: 导航搜索

网格碰撞体

RTENOTITLE

在引擎中,我们创建的游戏对象是不具有属性的。比如说,虽然引擎中,我放置了一颗树,但是如果没有添加属性,那它仅仅只是一个有形状、有贴图的模型。所以,游戏中房屋的墙壁,树木等你不希望玩家“穿过”的物体,都需要加上网格碰撞属性。

  • 我们可以先摆放模型,再在模型对象上直接添加网格碰撞体组件,这样,网格碰撞体的“模型文件”处,会自动变为该模型文件;
而如果我们在一个没有模型的对象上添加网格碰撞体组件,这时候,“模型文件”文件名为none,我们需要手动浏览资源,添加模型文件。
  • 模型文件后缀:.polygonsoup
材质文件后缀:.physicMaterial

盒型碰撞体

RTENOTITLE    RTENOTITLE

为了防止出现穿模、穿帮等问题,有些区域尽管没有放置模型,但是我们依然不希望玩家通过,这时候可以添加盒型碰撞体。如右图,蓝框区域即是一个盒型碰撞体(当然,游戏中是看不见蓝框的)。

这种盒型碰撞体常用做空气墙。

  • 中心:碰撞器在对象本地坐标的位置
  • 尺寸:在X、Y、Z轴上的碰撞尺寸

碰撞

RTENOTITLE

“碰撞”属性一般会添加在“地面”上。只有添加了“碰撞”属性的对象,才能生成导航网格。

不管是“山”还是“水”,在引擎里和“平地”本质上没有区别,如果我们给“山”“水”添加了“碰撞”属性,并生成了导航网格,那么我们也可以在“爬山涉水”。

刚体

RTENOTITLE

要使一个物体受物理控制,可以简单地添加一个刚体组件。这时,物体将受重力影响,并且可以与其他物体相撞。

添加了刚体组件的物体,玩家是可以推动的,如包装箱或松散的物体,通过脚本施加力,可以使它们移动。

  • 质量:物体的重量为千克为单位,建议质量不超过或不少于其他刚体的100倍。
  • 阻力:当通过力移动时,影响物理的空气阻力值。0表示没有空气阻力,阻力无穷大时,物理会立刻停止移动。
  • 角阻力:当物理旋转时,收到的阻力值。0表示没有角阻力,阻力无穷大时,物理会立刻停止旋转。
  • 重力:是否启用重力。如果勾选,物体将受重力影响。
  • 运动:启用后,物体将不受物理引擎驱动,只能由脚本或动画控制。