1.概述
将行为和功能添加到GameObject。您已经使用了Transform Component,而这仅仅是开始!在本教程中,您将添加另一个组件RigidBody组件,该组件提供GameObject的物理属性,以便它可以与重力和其他GameObjects交互。您还将放置主摄像机的位置,以观察GameObject如何响应3D中的重力。
2.开始之前
1.在层次结构中创建一个新的Sphere GameObject。
![在层次结构中创建的新Sphere GameObject](https://connect-cdn-public-prd.unitychina.cn/h1/20200925/learn/images/dd774c91-418b-4223-9dc3-5fa401d978bf_79.png)
2.将球体移动到纪念碑内部的空间,以便将其定位在台阶上方的“空中”。您可以使用“变换”工具,检查器中的“变换组件”或同时使用这两者。
![纪念碑游戏对象,一侧的楼梯上方有一个小球体](https://connect-cdn-public-prd.unitychina.cn/h1/20200925/learn/images/fe76e695-4062-430e-b579-d57db9697112_78.png)
3.放置主摄像机
在每个新场景中,都有如下所示的摄像机。
![场景中显示的主摄像机图标和位置](https://connect-cdn-public-prd.unitychina.cn/h1/20200925/learn/images/d241a4ab-246d-4306-97c9-90f61ce65dae_77.png)
该摄像机在“层次结构”中称为“主摄像机”,它可以将您的场景捕获并显示给玩家,就像它出现在“游戏”视图中一样。在“场景”视图是构建场景的位置,而“游戏”视图则是游戏对玩家的显示方式的预览。
场景中的相机是一个GameObject,就像其他任何一个一样。选择它后,您将在“检查器”窗口中看到其“变换组件”。您可以像使用任何其他GameObject一样更改这些设置。请注意,缩放摄像机将无效。
选择相机时,您会看到称为截头锥体的金字塔状形状的轮廓。视锥体显示了相机正在查看场景的哪个部分。相机看不见平截头体以外的任何东西。
![选择相机后,可以看到相机视锥](https://connect-cdn-public-prd.unitychina.cn/h1/20200925/learn/images/198b4685-e916-4d58-9bb8-515075f7e780_76.png)
选择摄像机(1)时,可以在检查器中展开“摄像机组件” (2)以打开“摄像机预览”窗口(3),该窗口向您显示场景中摄像机可见的内容。
![检查器显示了摄像机的属性,场景窗口显示了激活后的摄像机预览](https://connect-cdn-public-prd.unitychina.cn/h1/20200925/learn/images/9b4c377d-942d-4dfa-8fdd-52563fa3e2a1_75.png)
将相机移动到可以“看到”球及其下方步骤的位置。
提示:您还可以通过在“层次结构”窗口中选择摄像机,然后按Ctrl + Shift + F来移动摄像机使其与当前场景视图对齐。
选择播放按钮以运行游戏。请注意,目前没有任何反应。这是因为您仍然需要将一个组件应用于球体,以告诉球体它如何与游戏物理相互作用。在这种情况下,您需要使其牢固以使其对重力产生反应。
4.使球体变成刚体
还记得创建立方体内部的球体的时候吗?物理世界中的对象不会以这种方式存在于其他对象中,但是默认情况下,在Unity场景中,GameObjects不具有质量或对重力没有响应。为了使GameObject表现得像真实世界中的物理对象,可以通过添加RigidBody Component赋予其物理属性。
要将RigidBody组件添加到Sphere GameObject:
1. 在“层次结构”窗口中,选择“球体”。
2.在“检查器”窗口中 选择“添加组件”按钮。
![检查器中的“添加组件”按钮](https://connect-cdn-public-prd.unitychina.cn/h1/20200925/learn/images/281c0802-c3a4-4e56-be48-369f30173375_74.png)
3. 使用搜索栏找到一个刚体部件并将其选中。请注意,有两个可用选项,Rigidbody和Rigidbody 2D 。确保选择“刚体”组件,而不是2D组件。
![将刚体组件添加到选定的GameObject。](https://connect-cdn-public-prd.unitychina.cn/h1/20200925/learn/images/0608861b-31f1-41fa-a8ec-f55d128d01f0_73.png)
4. 在检查器的“ RigidBody组件”中,如果尚未选择“使用重力”,则选择“使用重力”。
![激活了“使用重力”的刚体组件](https://connect-cdn-public-prd.unitychina.cn/h1/20200925/learn/images/75f10789-b28d-4d70-9514-0d1bbfc882f2_72.png)
5. 要查看这些属性的效果,请按Play(播放)按钮开始游戏,这将显示Game(游戏)视图。
球掉落并滚下台阶。如果没有滚动,请尝试使用变形工具将其移动到新位置,然后再次运行游戏。
5.试验掉落的GameObjects
尝试此练习的变体。移动Sphere GameObject和“主摄影机”以获得所需的结果。
还有更多尝试的方法:
-
使用不同高度的RigidBody组件添加更多球体。
-
添加其他原语,并查看它们的行为。
-
将物体放在不同的地方。
-
-
旋转纪念碑游戏对象。
-
需要注意的一件事是,您可以在游戏运行时更改所选GameObject的属性,值和位置,但是当游戏停止时,所有值将恢复为游戏开始前的状态。这对于在运行时测试不同的参数很有用,但是如果您希望更改是永久的,则需要在游戏停止时进行更改。