0:00:01.146,0:00:03.660 2D 弹性与滑动(Bouncing and Sliding 2D)。 0:00:05.445,0:00:07.445 有四个组件在一起共同工作 0:00:07.445,0:00:10.001 就可以在2D场景中创建一个有弹性的球。 0:00:11.478,0:00:13.478 这个Sprite的图像是一个球。 0:00:14.075,0:00:16.296 一个Collider组件可一个为这个图像 0:00:16.296,0:00:18.296 在场景中提供物理属性。 0:00:19.155,0:00:21.957 一个Physics Material 2D组件可以为这个Collider 0:00:21.957,0:00:23.957 提供摩擦性以及弹性。 0:00:24.954,0:00:28.158 一个Rigidbody组件可以允许这个球 0:00:28.158,0:00:31.537 被物理作用力影响,包括重力, 0:00:31.537,0:00:33.509 并且能够参与到物理事件当中去, 0:00:33.509,0:00:35.509 比如碰撞(Collision)以及触发(Trigger)。 0:00:37.031,0:00:39.347 为了实现一个被冰覆盖的平台 0:00:39.347,0:00:41.347 Rigidbody 2D组件并不是必须的 0:00:41.347,0:00:43.347 除非这个平台是移动的。 0:00:45.049,0:00:47.049 为了创建一个具有弹性的球 0:00:47.049,0:00:49.049 首先需要将这个图像Sprite添加到Scene。 0:00:49.853,0:00:52.295 这种形式的球是一种很简单的模式 0:00:52.295,0:00:55.548 它不会与场景中的其他游戏对象 0:00:55.548,0:00:57.548 产生交互。 0:00:58.158,0:01:00.168 为了让这个图像Sprite可以产生物理反应 0:01:00.168,0:01:02.568 需要在场景中添加一个Collider 2D组件 0:01:02.568,0:01:03.984 到这个游戏对象上。 0:01:04.819,0:01:06.819 一种完成这个功能方式就是 0:01:06.819,0:01:09.351 在这个游戏对象上选择Add Component按钮。 0:01:10.134,0:01:12.810 然后选择Physics 2D 0:01:14.415,0:01:16.415 Circle Collider 2D。 0:01:18.794,0:01:22.939 Circle Collider 2D非常适合圆形的物体, 0:01:22.939,0:01:24.750 关于Collider 0:01:24.750,0:01:27.532 Collider 2D以及Circle Collider 2D的更多信息 0:01:27.532,0:01:30.163 请参看下面的链接。 0:01:31.192,0:01:33.303 目前来看游戏对象可以参与到 0:01:33.303,0:01:36.832 物理事件中去,但是无法引导事件。 0:01:37.539,0:01:39.539 这个游戏物体不会对物理 0:01:39.539,0:01:42.435 作用力产生反应也不会受重力影响。 0:01:43.294,0:01:45.994 为了实现这些功能我们必须将一个 0:01:45.994,0:01:47.994 Rigidbody 2D组件添加到游戏物体上去。 0:01:48.812,0:01:50.812 可以通过选择 0:01:51.602,0:01:53.004 Add Component 0:01:53.646,0:01:55.218 Physics 2D 0:01:56.146,0:01:58.146 Rigidbody 2D添加。 0:02:01.630,0:02:04.887 现在这个球可以因为重力的影响下降了。 0:02:05.705,0:02:07.705 但是却不具有弹性。 0:02:08.509,0:02:10.509 为了让这球富有弹性 0:02:10.509,0:02:12.509 需要使用一个2D物理材质(Physics Material 2D)。 0:02:13.147,0:02:15.649 Physics Material 2D是一个资源(Asset) 0:02:15.649,0:02:18.050 并且会被存储在Project View中。 0:02:18.881,0:02:21.562 一种创建一个新的Physics Material 2D 0:02:21.562,0:02:23.562 的方式是选择 0:02:24.573,0:02:26.573 Create Physics 2D Materital。 0:02:27.322,0:02:30.940 然后就会在我们的Project View中创建一个新的资源。 0:02:32.434,0:02:34.654 这个新的Physics Material 2D资源 0:02:34.654,0:02:36.210 需要被编辑。 0:02:36.864,0:02:38.864 首先它需要被命名。 0:02:39.599,0:02:40.806 Bouncy。(弹性) 0:02:43.107,0:02:46.330 一个Physics Material 2D具有两个属性 0:02:46.830,0:02:49.348 摩擦性(Friction)以及弹性(Bounciness)。 0:02:50.090,0:02:53.296 这个弹性球的摩擦力应当很小。 0:02:53.296,0:02:57.051 但是很明显的需要非常强的弹性。 0:02:58.255,0:03:00.561 一种将这个Physics Material 2D 0:03:00.561,0:03:02.314 添加到Collider组件的方式 0:03:03.061,0:03:05.858 就是简单的将这个Physics Material 2D 0:03:05.858,0:03:09.731 拖放到这个Collider 2D组件的Materials选项上。 0:03:10.562,0:03:13.445 现在这个球不仅对物理作用力有反应 0:03:13.445,0:03:15.237 并且可以和Scene中的其他Collider产生交互, 0:03:15.237,0:03:18.010 同时在交互过程中表现出富有弹性的特性。 0:03:19.657,0:03:21.657 为了实现一个很滑的被冰覆盖的平台 0:03:21.657,0:03:23.657 我们进需要三个这样的组件 0:03:23.657,0:03:25.657 除非这个平台是移动的。 0:03:26.267,0:03:28.681 首先将一个Sprite Image添加到Scene中。 0:03:30.162,0:03:33.260 然后添加一个Collider 2D组件。 0:03:34.050,0:03:36.846 这种情况下可以使用Box Collider 2D。 0:03:40.150,0:03:43.223 随后创建一个新的Physics Material 2D 0:03:43.223,0:03:45.223 并且把它添加到这个Collider 2D组建上。 0:03:51.842,0:03:54.106 可以在任意时刻 0:03:54.106,0:03:55.689 编辑这个Physics Matertial 2D, 0:03:55.689,0:03:57.982 即使它已经被添加到Collider上去。 0:03:59.186,0:04:01.753 这个被冰面覆盖的平台需要非常的滑 0:04:01.753,0:04:04.128 也就意味着摩擦力会非常小。 0:04:04.875,0:04:07.856 冰非常的硬并且不是很有弹性 0:04:07.856,0:04:10.519 因此它的弹性应当设定的非常小或者没有弹性。 0:04:21.722,0:04:23.722 从这个新的很滑的平面我们看出 0:04:23.722,0:04:25.722 物体会从右边滑动出去。 0:04:26.443,0:04:29.305 关于Physics,Physics 2D 0:04:29.305,0:04:31.221 以及Physics Matertial 2D 0:04:31.221,0:04:33.529 的更多消息可以参看下面的链接。 0:04:36.069,0:04:38.925 如果这个平台是移动的 0:04:38.925,0:04:42.800 就需要在这个平台的Game Object上添加一个Rigidbody 2D 0:04:44.571,0:04:48.609 并且将这个Rigidbody设定为使用运动系统(Kinematic)。 0:04:49.869,0:04:52.326 更多关于Rigidbody, 0:04:52.326,0:04:56.110 Rigidbody 2D以及Is Kinematic属性 0:04:56.110,0:04:58.653 请参看下面的链接。