凌云的自留地儿

if( 爱编程 && 爱钻研 && 更爱新技术 && 爱网络 && 爱游戏 && 也爱移动大平台) print(&quo...

【Unity学习系列之一】 转动的Cube

        Unity绝对是一个彪悍的编辑器,是一个高效的游戏开发生产线;强大的编辑能力、多平台的支持,作为一个技术人员不得不赞叹。身为程序员,在了解Unity3d基本使用的同时,最关注的莫过于脚本系统。因为只有Coding,才能体现程序员的价值。      

         脚本在Unity中被看作是一个组件(Component),如同其他的Object一样。Unity中的脚本采用的是JavaScript,C#或者 Boo语言。闲话少过,先看例子。

1、 创建一个空项目

2、  创建一个物体(GameObject à Create Other à Cube)

 

3、  Hierarchy中会出现新创建的游戏对象Cube

 

4、  选中Cube,在Inspector中会显示出Cube对象的具体属性。在这里可以对该对象的属性进行编辑修改。

选中Cube后,在Scene中我们只能看到一个坐标系,而没有见到我们创建的Cube对象。要想看到Cube的真容貌,只需在Hierarchy选中Cube,按下F键,并将鼠标移至Scene区,视角就会自动调整至合适位置。

5、  调整Main Camera的位置,将Cube置于视区内

6、  此时点击Run按钮,效果如下:

7、  我们想让Cube动起来,这就需要我们用脚本来控制它了。下面创建脚本Move。

Project栏中会出现创建的脚本文件,重命名为Move:

 

8、  选中Move,在Inspector中会显示出系统自动生成的脚本内容:

9、  点击open按钮,用Mono IDE进行编辑:

修改Update函数:

void Update ()

{

         transform.Rotate(0, 10*Time.deltaTime, 0);

}

这样的代码对于不是很熟悉Unity环境的人来说确实有些奇怪;transform是什么东西,Rotate又是哪里来的函数。下面做简单解释:

(1)function Update ()是一个代码容器,每帧执行一次。

(2)transform是游戏物体的Transform Component的reference,是任何一个游戏物体都必不可少的一个变量。这个属性变量是由Unity自动为我们创建的,我们不需要像往常一样为这个写一个单独的类。通过它可以控制物体的位置信息。

(3)Rotate()是Transform Component的一个函数,控制物体旋转。

所以上述一行代码的意图就是控制物体绕X轴旋转,每秒10度。

(注意:类名应当与文件名保持一致,也应作出修改)

 10、写完了脚本,并不代表你已经大功告成。因为现在脚本是脚本,物体是物体,相互之间还没有建立相应的联系,让系统知道这个脚本是控制这个物体的。建立脚本与物体之间的联系就是接下来的工作。关联方式有两种:

(1)选中project中脚本Move,拖动脚本至Scene中对应的物体上。

(2)选中Hierarchy下Cube,然后如图所示,选择Move。

10、              再次运行,看到Cube正在转动

11、              为了效果明显,添加光照,运行,如下:

 

==========Over==========Over==========Over==========Over==========Over========

作者: 凌云

出处:http://blog.csdn.net/ljfay1984

版权:本文版权归作者和CSDN共有
转载:欢迎转载,为了保存作者的创作热情,请按要求【转载】
要求:未经作者同意,必须保留此段声明;必须在文章中给出原文连接;否则必究法律责任

阅读更多
个人分类: Unity 3D
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭