改变游戏对象的状态Main Camera与Game视图Transform组件C#游戏开发快速入门大学霸
改变游戏对象的状态Main Camera与Game视图Transform组件C#游戏开发快速入门大学霸
2.2 改变游戏对象的状态改变游戏对象的状态,就是要改变游戏对象的位置、朝向和大小改变游戏对象的状态Main Camera与Game视图Transform组件C#游戏开发快速入门大学霸。那么,为什么要改变游戏对象的状态呢?当然是因为游戏对象的状态不合适了。在具体说明之前,读者应该先了解下Main Camera对象的作用。
2.2.1 Main Camera与Game视图改变游戏对象的状态Main Camera与Game视图Transform组件C#游戏开发快速入门大学霸
Unity提供了Scene视图,开发者通常就是在这个视图中操作游戏场景中的各个对象的。但是,实际做出的游戏的视图,并不是Scene视图里看到的样子,而是Game视图里看到的样子。因此Game视图也是游戏开发过程中,不可或缺的参考视图,如图2-6所示。
图2-6 Scene、Game视图效果对比改变游戏对象的状态Main Camera与Game视图Transform组件C#游戏开发快速入门大学霸
如果读者使用鼠标对Game视图做各种单击、拖动操作,就会发现,这不起任何作用。那么读者该如何改变Game视图的成像呢?还记得Main Camera对象吗,实际上Game视图的成像是由Main Camera对象决定的。可以把Main Camera对象想象成摄像机,因此改变Main Camera对象的状态,就改变了摄像机的角度,进而改变Game视图的成像,如图2-7所示。
图2-7 通过修改Main Camera对象的状态(位置),进而改变Game视图的成像改变游戏对象的状态Main Camera与Game视图Transform组件C#游戏开发快速入门大学霸
但是,改变Main Camera对象的状态是远远不够的,要让Game视图呈现出好的效果,除了角度以外,还需要游戏场景中各游戏对象的配合,也就是说,游戏对象需要改变各自的状态,进而改变它们的相对位置,最后才能在游戏视图中给玩家在视觉上呈现出一个好的视觉效果。改变游戏对象状态的方法是,操作游戏对象上的Transform组件。
2.2.2 Transform组件 改变游戏对象的状态Main Camera与Game视图Transform组件C#游戏开发快速入门大学霸
组件(Component)可以看作是一类属性的总称。而属性是指游戏对象上一切可设置、调节的选项,如图2-8所示。
图2-8 组件与属性改变游戏对象的状态Main Camera与Game视图Transform组件C#游戏开发快速入门大学霸
所有的游戏对象都有Transform组件,而Transform组件下的各属性,决定了游戏对象的位置、朝向和大小的状态。要修改游戏对象上Transform组件下的各属性,必须要指定修改的游戏对象是哪一个,指定的方式有两种:
q 直接使用鼠标点选Scene视图中要改变状态的游戏对象;
q 直接使用鼠标点选Hierarchy视图中要改变状态的游戏对象的名称;
然后Inspector视图就会将选中的游戏对象的所有可设置的属性显示在其中,如图2-9所示。
图2-9 查看并设置Directional light对象Transform组件属性的方法
读者可以直接在Inspector视图里设置游戏对象的状态,对于Transform组件下的各属性,Position决定位置,Rotation决定朝向,Scale决定大小。对属性的修改会实时的反应在Scene、Game视图中。
2.2.3 直接操作游戏对象改变游戏对象的状态Main Camera与Game视图Transform组件C#游戏开发快速入门大学霸
在Inspector视图里通过设置属性而改变游戏场景中游戏对象的状态,太过抽象,毕竟数字并不够直观。其实,改变游戏对象的状态,完全有最最直观,最最简单的方法,那就是在Scene视图里,直接使用鼠标操作游戏对象。
在Unity的左上角,有个工具栏,它显示了4个按钮,如图2-10所示。它们分别表示拖动Scene视图、改变游戏对象的位置、朝向和大小。
图2-10 Unity左上角的4个工具栏按钮
要改变游戏对象的位置,就可以先使用鼠标选中工具栏的第二个按钮,然后点选Scene视图中的指定对象。被点选的对象上会出现3个颜色的坐标轴,每个坐标轴的交点处还有一个小矩形,如图2-11所示。
q 使用鼠标点击坐标轴并拖动的话,游戏对象就会朝着坐标轴的方向移动;
q 使用鼠标点击小方块并拖动的话,游戏对象就会在组成小方块的两个坐标轴构成的平面上移动;
图2-11 要移动Cube对象时,对象上出现的坐标轴
要改变游戏对象的朝向和大小,可以分别选择第3、4个按钮,然后选中指定的游戏对象,最后操作辅助线即可,如图2-12所示。
图2-12 改变游戏对象的朝向和大小改变游戏对象的状态Main Camera与Game视图Transform组件C#游戏开发快速入门大学霸
本小节讲解了在Scene视图里,改变Cube对象状态的方法,这样的方法对于所有的对象都是适用的,当然也包括当前游戏场景中的Plane对象,如图2-13所示。改变游戏对象的状态Main Camera与Game视图Transform组件C#游戏开发快速入门大学霸
Comments are closed.