# 物理行为
物理从原来单纯的积木模式,切换行为插件模式。只有给精灵添加了物理行为才能使用物理相关的积木。 物理行为模拟现实的对象物理。它由 Box2D 驱动。本工具带有几个示例,演示了物理行为可以做什么。
物理行为是相对复杂的。建议使用以下教程,以基本了解如何使用物理行为以及在开始使用物理行为之前要了解的一些要点:
- 物理:基础知识
- 物理:力,脉冲,扭矩和关节
本手册部分不会重复这些教程中的信息。相反,它将仅描述物理行为的每个特征。这些教程介绍了物理引擎的工作原理,关节的不同类型,冲力和力之间的差异,等等,以防你不熟悉它们。
# 使用物理
选中精灵,右侧属性面板就能看到“管理行为”按钮。
点击按钮,弹出以下对话框,选择给精灵加物理行为。
物理行为将对象的物理特征模拟到场景中。如果一个变化但另一变化不变,引擎将尝试使物理世界和“游戏世界”保持同步,但这可能是不可预测的。例如,设置对象的位置或角度将使将物理世界中的相应对象传送到新位置,而这可能让物理碰撞出现不可预料的情况。而且在使用物理行为的同时使用其他行为也可能出现这种情况。
因此,强烈建议完全通过物理行为(通过设置力,脉冲,转矩等)来控制物理对象,而不是尝试通过“设置位置”,“设置角度”等来操纵对象。
# 物理属性
添加完行为后,会在属性面板出现该行为的相关属性。可以设置一些初始化的信息,减少用积木去实现。
# 是否启用
物理模拟是最初启用还是禁用。如果禁用,则不会对该对象进行任何物理处理,其他物理对象可以通过该对象,就好像它是空白空间一样。
# 精灵轮廓
如何处理该对象的物理碰撞。选项包括:
素材轮廓,将来自动画编辑器的对象的碰撞多边形用于物理碰撞。如果没有碰撞多边形,它将使用对象的边界框。
矩形,会忽略对象的碰撞多边形(如果有),并且出于物理碰撞的目的,会将对象视为矩形。
圆,忽略对象的碰撞多边形(如果有),并且出于物理碰撞的目的,将对象视为圆。这使对象可以顺畅滚动(例如,桶)。这是特别有用的,因为对象的碰撞多边形是由直线组成的,因此无法以这种方式创建平滑的圆。
# 能否倾倒
锁定对象的角度,以便物理碰撞不会导致其旋转。
# 摩擦系数
物理对象的摩擦系数从 0(无摩擦)到 1(最大摩擦)。这样可以调整物体在触摸时彼此相对移动的难易程度。
# 反弹系数
物理对象的弹性(也称为恢复性或弹性),从 0(无弹性,如岩石)到 1(最大弹性,如橡胶球)。这会影响到高高的物体撞击地板时的反弹程度。
# 移动速度衰减系数
对象在移动时随时间降低的速率,从 0(完全没有降低)到 1(最大降低)。
# 旋转速度衰减系数
旋转时对象随时间降低的速率,从 0(完全没有降低)到 1(最大降低)。
# 类型
如果是静态刚体,则模拟质量无限的对象。它的密度将被忽略,它将永远不会移动。
# 速度大小
直接设置对象的当前速度,为 X 和 Y 轴提供每秒像素的速度。
# 速度方向
设置对象速度方向,会分解为 X 和 Y 轴力
# 力的大小
朝某个位置或使用自定义 X 和 Y 轴力在对象上施加力
# 力的方向
施加力会使物体沿力的方向加速。
# 物理积木
一旦添加完行为,就可以在积木区看到对应的物理积木。 需要注意的是,积木只能在添加了此行为的精灵上,其他精灵是不能使用的。
# 设置力的大小和方向
以一定角度,朝某个位置或使用自定义 X 和 Y 轴力在对象上施加力。施加力会使物体沿力的方向加速。 可以在图像点上施加力,通常这也会导致对象旋转。为图像点使用 0 将使用对象的质心,该质心不会引起旋转。使用-1 以使用对象的原点,该原点可能与质心不同并引起旋转。
# 设置重力大小和方向
设置影响所有物理对象的重力。默认情况下,此力为 10 向下。全局影响。