天才的大三暑假修行之旅.再遇打飞机

来源:互联网 发布:软件测试模型分为 编辑:程序博客网 时间:2024/04/30 10:56

天才的大三暑假修行之旅.再遇打飞机

参照昨天国图借的几本书来学习,第一本是讲解官方教程的,跟着教程走的第一个练习就是打飞机。其实算上这个打飞机的游戏已经做个3个了。一个2d一个3d的。所以再看教程就开始挑刺了。
但是书也有出彩的地方。介绍了一款Visual编辑器的Unity插件,方便调试。起初我还开心的以为安装了之后打开Shader会高丽加提示,没想到没有变化。后来还讲了这么修改默认生成脚本的方法。可以在安装目下\Editor\Data\Resources\ScriptTemplates中修改示范代码,以后新生成的代码当中就会自动修改了。
这里写图片描述

Q:这有什么用?
A:给大家说一个效果就是编译语言的门派。
一个是这样的

Void Function(){}

一个是这样的

Void Funcion(){}

Unity默认的是第一种,但是用惯VS,而且习惯了附带的规范代码快捷键之后,看第一种还是不习惯。所以修改成第二种。
还有的人喜欢给代码添加Awake方法。总是觉得每次都加很麻烦也可以加上去。

接着开始说项目。跟普通打飞机的例子差不多,开始设置背景,然后添加玩家打飞机,在加上控制脚本。这里说一下不同之处。以往的控制代码很多书都放在Update,这本书写在了fixedUpdate当中。建议大家也这么写。

Q:为什么呢?
A:网上百度吧,别人讲的比我好,我就不重复了。

再介绍就是添加发射子弹然后销毁子弹的代码。本例是用一个大的透明盒子把游戏场景盖住,然后当子弹碰到盒子就会被认为飞出屏幕,然后就销毁子弹。但是我后来还是修改成了自己销毁自己的方式,在Start方法中给子弹添加一个初速度,然后我直接让它Destroy(this.gameobjetc,2.0f)这样子就会节省很多性能,因为添加碰撞体就要多增加碰撞检测。

然后再说说比较奇怪的地方,就是作者喜欢创建很多个脚本,比如将敌方飞机上的脚本,拆成好几个,碰撞放一个,移动在放另外一个。这样虽然利用率很高,但是感觉不好管理。也有可能是书的第一个例子,所以讲的简单一些。最后上一张效果图。

这里写图片描述

补充

原来要把打飞机拆成两篇写的,但是第二部分量太少了。所以就放在一起好了。书后介绍了,添加音效,在陨石爆炸,飞机爆炸,发射子弹的时候会发出声音,有一定Unity基础的人自然都懂了。然后是增加文字,书中使用的是UGUI,毕竟是Unity自带的教程。也只是使用了一个Text非常简单,没有难度。
最后上一张完成的成品图,FYI:只有一种敌人就是陨石

这里写图片描述

这里写图片描述

0 0
原创粉丝点击