写代码也要读书,爱全栈,更爱生活。每日更新原创IT编程技术及日常实用技术文章。
我们的目标是:玩得转服务器Web开发,搞得懂移动端,电脑客户端更是不在话下。
更多原创教程,请点击上方关注或微信公众平台:做全栈攻城狮。
技术交流群:高手群:538742639新手群: 572577013
本文章由做全栈攻城狮,原创首发,如有转载,请声明出处。
WX:aiquanzhan
本教程致力于程序员可以利用unity技术快速学习和入门游戏开发。一方面通过自己的总结希望可以帮助更多热衷与游戏开发或者编程技术开发的同仁。另一方面可以总结自己所得,提升自己。
这是游戏开发的第二篇教程文章。上一篇请看:Unity 3D初学入门教程,7天玩转游戏开发VR虚拟现实1
上篇主要介绍了游戏开发引擎的一点小知识。因为平台限制,总目录请到公众号回复“游戏开发目录”获取。
目录
游戏对象
GUI-图形用户界面
游戏对象
什么是游戏对象?简单来说,所有游戏中包含的物品都可以看成是游戏对象。如,人,墙,怪兽等。
层次面板中中创建的都算是游戏对象的哦。
代码中,gameObject就是游戏对象。
有时需要对游戏对象进行相关的设置,比如长高宽等,就需要在属性面板中设置:
但仔细看Cube对象,也就是一个正方体,发现是这个样子的:
通体是白色的。但实际上游戏中的箱子是有其他的一些材质的,比如铁的,木头的等等。所以怎么给箱子穿衣服:
在项目中,添加Textures文件夹用来存放图片资源。导入图片的话需要拖拽文件拖入:
素材准备好了,直接拖放到正方形的游戏对象上:
此时 你会发现Cube对象四周放上了那个图片。
其中右侧属性面板也出现了:
同时项目中出现了Materials文件夹。并出现了一个和图片名字一样的文件:这就是unity根据图片自动生成的材质文件。实际上cube对象应用的是这个材质。
同时也可以在游戏对象的属性列表中看到具体的属性:
再次回到上次的移动的例子,进行移动时,对于帧率不同时,其移动的距离是不一样的。需要解决这个问题,从而保证移动距离一致:
Time.deltaTime表示每一帧运行的时间。这样一来,就保持哪怕运行设备不一致,也可以保证移动距离一致了。同时也可以乘以一个倍数,从而增加移动速度:
另有:
Time.time 表示游戏运行的总时间。
可以使用print输出时间,并在输出窗口查看。
输出窗口查看:
GUI-图形用户界面
GUI是什么?图形用户界面,永远停留显示在屏幕上。主要是为了和用户进行交互使用的,比如:
这些角色属性配置以及聊天界面都是GUI的范畴。其实就是我们常用的软件的界面,包含各种控件供以使用。
因为GUI要求一直显示在屏幕上,所以要实现GUI一直显示,一般把GUI脚本放到摄像头或者空的对象上:
绘制一个按钮:
把脚本拖放到摄像机,并运行,效果:
流式布局
对于按钮,一定得有点击事件啊:
其他常用很多控件:
RepeatButton和Button的区别
Button只有当鼠标点击抬起的时候,返回为true。
而RepeatButton是当鼠标按下的时候会不断的返回为true。
总体而言,RepeatButton非常适合按下鼠标时,不断进行的操作,比如打枪发子弹。Button适合进行点击一次的时候使用。
写代码也要读书,爱全栈,更爱生活。每日更新原创IT编程技术及日常实用技术文章。
我们的目标是:玩得转服务器Web开发,搞得懂移动端,电脑客户端更是不在话下。