在Unity中对物体的操作常常通过修改对象的变换属性和刚体属性参数实现。而这些参数的修改可以通过脚本编程实现。
1.使用脚本实现物体的旋转
(1)添加立方体。新建项目“Cube_Pro”,然后在“Hierarchy”视图中单击鼠标右键,选择“3D Object”→“Cube”,在场景中添加一个立方体,放在了地平面的中心点(0,0,0)位置。
(2)光源。在Unity 3D中内置了四种形式的光源,分别为点光源(Point Light)、定向光源(Directional Light)、聚光灯光源(Spotlight)和区域光源(Area Light)。
点光源是一个可以向四周发射光线的一个点,类似灯泡。
定向光源能够更好地模拟太阳。定向光源发出的光线都是平行的,并从无限远处投射光线到场景中,适用于户外的照明。
聚光灯光源的照明范围为一个椎体,类似于聚光灯发射出来的光线,并不会像点光源一样向四周发射光线。
区域光源是创建一片能够发光的矩形区域,只有在光照烘焙完成后才能看到效果。
若需要添加光源,可以点击菜单“GameObject”→“Light”来完成。现在可以看见,场景中有一个平行光“Directional Light”。
修改“Main Camera”的位置值为(0,1,-5)。
(3)添加脚本
①为使立方体旋转,需要为立方体对象添加脚本文件。在“Project”视图中右键菜单选择“Create”→“C#Script”创建C#脚本,并命名为“CubeControl”。
②双击“CubeControl”,打开Visual Studio编辑器,输入如下代码实现立方体的旋转,保存后,退出编辑器。
③将保存后的“CubeControl”通过鼠标拖动到“Hierarchy”视图中的“Cube”上进行脚本绑定。
④按“Play”按钮进行播放。立方体绕X轴每帧旋转2°。
⑤进一步修改“CubeControl”C#脚本,代码如下:
使得立方体可以通过按动键盘上的上、下、左、右键进行翻转。(www.xing528.com)
2.使用脚本实现物体的移动
(1)创建项目和场景。新建“Sphere_Pro”项目,然后在场景中创建一个平面“Ground”和一个小球“Player”,并将小球拖到地面上方。
(2)添加重力。在“Hierarchy”视图选择小球对象,在“Inspector”视图单击下面的“Add component”按钮,添加重力后,点击播放按钮,小球会从空中落下。
(3)添加脚本
为使小球运动,要给小球添加脚本文件。
①在“Project”视图选择“Create”→“Folder”创建文件夹“Scripts”,用于存储脚本文件。
②在“Hierarchy”视图选择小球对象“Player”,在“Inspector”视图单击最下面的“Add component”按钮,输入“Player”,选择“New Script”,语言选择C#,单击“Create and Add”按钮来创建脚本文件,如图8-40所示。
图8-40 添加C#脚本
③将Player脚本文件拖到Scripts文件夹中。
④双击Player脚本文件,打开Visual Studio编辑器。
⑤使小球沿X轴运动。为了使小球运动,需要先得到小球的刚体,并对刚体施加一个方向的力。首先,需要定义一个刚体对象“private Rigidbody rd;”,然后对小球刚体施加一个单位X轴方向的力,脚本如“rd.AddForce(new Vector3(1,0,0));”或“rd.AddForce(Vector3.right);”。其中Vector3是Unity提供的用来表示三维向量的类。
代码如下:
按“Play”按钮运行。可以看到,小球落下后向右运动。
⑥若要使用键盘按键控制小球的运动,则使用Unity键位输入“Input类”,先获得键盘输入,然后再通过输入控制小球的移动。代码如下:
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。