1 00:00:01,146 --> 00:00:03,660 2D 弹性与滑动(Bouncing and Sliding 2D)。 2 00:00:05,445 --> 00:00:07,445 有四个组件在一起共同工作 3 00:00:07,445 --> 00:00:10,001 就可以在2D场景中创建一个有弹性的球。 4 00:00:11,478 --> 00:00:13,478 这个Sprite的图像是一个球。 5 00:00:14,075 --> 00:00:16,296 一个Collider组件可一个为这个图像 6 00:00:16,296 --> 00:00:18,296 在场景中提供物理属性。 7 00:00:19,155 --> 00:00:21,957 一个Physics Material 2D组件可以为这个Collider 8 00:00:21,957 --> 00:00:23,957 提供摩擦性以及弹性。 9 00:00:24,954 --> 00:00:28,158 一个Rigidbody组件可以允许这个球 10 00:00:28,158 --> 00:00:31,537 被物理作用力影响,包括重力, 11 00:00:31,537 --> 00:00:33,509 并且能够参与到物理事件当中去, 12 00:00:33,509 --> 00:00:35,509 比如碰撞(Collision)以及触发(Trigger)。 13 00:00:37,031 --> 00:00:39,347 为了实现一个被冰覆盖的平台 14 00:00:39,347 --> 00:00:41,347 Rigidbody 2D组件并不是必须的 15 00:00:41,347 --> 00:00:43,347 除非这个平台是移动的。 16 00:00:45,049 --> 00:00:47,049 为了创建一个具有弹性的球 17 00:00:47,049 --> 00:00:49,049 首先需要将这个图像Sprite添加到Scene。 18 00:00:49,853 --> 00:00:52,295 这种形式的球是一种很简单的模式 19 00:00:52,295 --> 00:00:55,548 它不会与场景中的其他游戏对象 20 00:00:55,548 --> 00:00:57,548 产生交互。 21 00:00:58,158 --> 00:01:00,168 为了让这个图像Sprite可以产生物理反应 22 00:01:00,168 --> 00:01:02,568 需要在场景中添加一个Collider 2D组件 23 00:01:02,568 --> 00:01:03,984 到这个游戏对象上。 24 00:01:04,819 --> 00:01:06,819 一种完成这个功能方式就是 25 00:01:06,819 --> 00:01:09,351 在这个游戏对象上选择Add Component按钮。 26 00:01:10,134 --> 00:01:12,810 然后选择Physics 2D 27 00:01:14,415 --> 00:01:16,415 Circle Collider 2D。 28 00:01:18,794 --> 00:01:22,939 Circle Collider 2D非常适合圆形的物体, 29 00:01:22,939 --> 00:01:24,750 关于Collider 30 00:01:24,750 --> 00:01:27,532 Collider 2D以及Circle Collider 2D的更多信息 31 00:01:27,532 --> 00:01:30,163 请参看下面的链接。 32 00:01:31,192 --> 00:01:33,303 目前来看游戏对象可以参与到 33 00:01:33,303 --> 00:01:36,832 物理事件中去,但是无法引导事件。 34 00:01:37,539 --> 00:01:39,539 这个游戏物体不会对物理 35 00:01:39,539 --> 00:01:42,435 作用力产生反应也不会受重力影响。 36 00:01:43,294 --> 00:01:45,994 为了实现这些功能我们必须将一个 37 00:01:45,994 --> 00:01:47,994 Rigidbody 2D组件添加到游戏物体上去。 38 00:01:48,812 --> 00:01:50,812 可以通过选择 39 00:01:51,602 --> 00:01:53,004 Add Component 40 00:01:53,646 --> 00:01:55,218 Physics 2D 41 00:01:56,146 --> 00:01:58,146 Rigidbody 2D添加。 42 00:02:01,630 --> 00:02:04,887 现在这个球可以因为重力的影响下降了。 43 00:02:05,705 --> 00:02:07,705 但是却不具有弹性。 44 00:02:08,509 --> 00:02:10,509 为了让这球富有弹性 45 00:02:10,509 --> 00:02:12,509 需要使用一个2D物理材质(Physics Material 2D)。 46 00:02:13,147 --> 00:02:15,649 Physics Material 2D是一个资源(Asset) 47 00:02:15,649 --> 00:02:18,050 并且会被存储在Project View中。 48 00:02:18,881 --> 00:02:21,562 一种创建一个新的Physics Material 2D 49 00:02:21,562 --> 00:02:23,562 的方式是选择 50 00:02:24,573 --> 00:02:26,573 Create Physics 2D Materital。 51 00:02:27,322 --> 00:02:30,940 然后就会在我们的Project View中创建一个新的资源。 52 00:02:32,434 --> 00:02:34,654 这个新的Physics Material 2D资源 53 00:02:34,654 --> 00:02:36,210 需要被编辑。 54 00:02:36,864 --> 00:02:38,864 首先它需要被命名。 55 00:02:39,599 --> 00:02:40,806 Bouncy。(弹性) 56 00:02:43,107 --> 00:02:46,330 一个Physics Material 2D具有两个属性 57 00:02:46,830 --> 00:02:49,348 摩擦性(Friction)以及弹性(Bounciness)。 58 00:02:50,090 --> 00:02:53,296 这个弹性球的摩擦力应当很小。 59 00:02:53,296 --> 00:02:57,051 但是很明显的需要非常强的弹性。 60 00:02:58,255 --> 00:03:00,561 一种将这个Physics Material 2D 61 00:03:00,561 --> 00:03:02,314 添加到Collider组件的方式 62 00:03:03,061 --> 00:03:05,858 就是简单的将这个Physics Material 2D 63 00:03:05,858 --> 00:03:09,731 拖放到这个Collider 2D组件的Materials选项上。 64 00:03:10,562 --> 00:03:13,445 现在这个球不仅对物理作用力有反应 65 00:03:13,445 --> 00:03:15,237 并且可以和Scene中的其他Collider产生交互, 66 00:03:15,237 --> 00:03:18,010 同时在交互过程中表现出富有弹性的特性。 67 00:03:19,657 --> 00:03:21,657 为了实现一个很滑的被冰覆盖的平台 68 00:03:21,657 --> 00:03:23,657 我们进需要三个这样的组件 69 00:03:23,657 --> 00:03:25,657 除非这个平台是移动的。 70 00:03:26,267 --> 00:03:28,681 首先将一个Sprite Image添加到Scene中。 71 00:03:30,162 --> 00:03:33,260 然后添加一个Collider 2D组件。 72 00:03:34,050 --> 00:03:36,846 这种情况下可以使用Box Collider 2D。 73 00:03:40,150 --> 00:03:43,223 随后创建一个新的Physics Material 2D 74 00:03:43,223 --> 00:03:45,223 并且把它添加到这个Collider 2D组建上。 75 00:03:51,842 --> 00:03:54,106 可以在任意时刻 76 00:03:54,106 --> 00:03:55,689 编辑这个Physics Matertial 2D, 77 00:03:55,689 --> 00:03:57,982 即使它已经被添加到Collider上去。 78 00:03:59,186 --> 00:04:01,753 这个被冰面覆盖的平台需要非常的滑 79 00:04:01,753 --> 00:04:04,128 也就意味着摩擦力会非常小。 80 00:04:04,875 --> 00:04:07,856 冰非常的硬并且不是很有弹性 81 00:04:07,856 --> 00:04:10,519 因此它的弹性应当设定的非常小或者没有弹性。 82 00:04:21,722 --> 00:04:23,722 从这个新的很滑的平面我们看出 83 00:04:23,722 --> 00:04:25,722 物体会从右边滑动出去。 84 00:04:26,443 --> 00:04:29,305 关于Physics,Physics 2D 85 00:04:29,305 --> 00:04:31,221 以及Physics Matertial 2D 86 00:04:31,221 --> 00:04:33,529 的更多消息可以参看下面的链接。 87 00:04:36,069 --> 00:04:38,925 如果这个平台是移动的 88 00:04:38,925 --> 00:04:42,800 就需要在这个平台的Game Object上添加一个Rigidbody 2D 89 00:04:44,571 --> 00:04:48,609 并且将这个Rigidbody设定为使用运动系统(Kinematic)。 90 00:04:49,869 --> 00:04:52,326 更多关于Rigidbody, 91 00:04:52,326 --> 00:04:56,110 Rigidbody 2D以及Is Kinematic属性 92 00:04:56,110 --> 00:04:58,653 请参看下面的链接。