和小伙伴们一起学Unity3D(二)GUI
2013-08-19 12:44
288 查看
在介绍GUI之前,我们首先要了解脚本,什么是脚本呢,在我看来就是命运之书。作为一个游戏开发者,即使在现实是个屌丝,但在游戏世界,我绝对是万能的上帝,每个游戏对象在我们的世界里都是芸芸众生的一员,都有自己的宿命,那么脚本就是游戏对象的宿命。
在开始学习之前,大家先到http://download.csdn.net/detail/yy8245075/5972823下载Unity3D帮助文档
Unity3D最常用的脚本语言有C#和JavaScript,博主推荐使用的是C#,对于语言,如果不深入研究的话,在我看来都是一样的,只要你有面向对象的思想,语言的不同也只是调用的函数不同,所以大家不久纠结于语言,首先我们来看一段代码:
这是我们在Project视图下新建的一个C#脚本,这里面有3个重要的函数:
Start函数是在游戏开始时执行,且只执行一次,也就是作为上帝的我们为每个生命赋予他的各项属性和天赋。
Update函数是在游戏运行后,每帧运行1次,它是在不断刷新调用的,主要负责游戏逻辑的更新
OnGUI函数是在游戏运行后,每帧运行2次,它也是不断刷新调用的,主要负责各种GUI的更新
上边的这段代码在运行后会在控制台输出"hello”,以后这个函数我们会经常用到来调试我们的游戏。
GUI有几个重要的控件:
Label控件、Button控件、TextField控件、ToolBar控件Slider控件
正所谓授人以鱼,不如授人以渔,我个人是很不喜欢填鸭式的教育的,那下面我已Button控件为大家抛砖引玉,教大家如何通过文档来学习
首先大家打开下载的Unity3D圣典,在索引界面输入"GUI",在右边的类函数一组选择"Button"
大家可以看到,button控件的返回值都是bool类型,即监控按钮是否被按下,各个参数在下边的参数列表都有详细的介绍,请大家记住GUIStyle这个参数,日后会为大家详细介绍
关于tex变量的赋值,我们可以这样做。
点击运行:
在开始学习之前,大家先到http://download.csdn.net/detail/yy8245075/5972823下载Unity3D帮助文档
Unity3D最常用的脚本语言有C#和JavaScript,博主推荐使用的是C#,对于语言,如果不深入研究的话,在我看来都是一样的,只要你有面向对象的思想,语言的不同也只是调用的函数不同,所以大家不久纠结于语言,首先我们来看一段代码:
using UnityEngine; using System.Collections; public class script : MonoBehaviour { // Use this for initialization void Start() { Debug.Log("Hello"); } // Update is called once per frame void Update() { } void OnGUI() { } }
这是我们在Project视图下新建的一个C#脚本,这里面有3个重要的函数:
Start函数是在游戏开始时执行,且只执行一次,也就是作为上帝的我们为每个生命赋予他的各项属性和天赋。
Update函数是在游戏运行后,每帧运行1次,它是在不断刷新调用的,主要负责游戏逻辑的更新
OnGUI函数是在游戏运行后,每帧运行2次,它也是不断刷新调用的,主要负责各种GUI的更新
上边的这段代码在运行后会在控制台输出"hello”,以后这个函数我们会经常用到来调试我们的游戏。
GUI有几个重要的控件:
Label控件、Button控件、TextField控件、ToolBar控件Slider控件
正所谓授人以鱼,不如授人以渔,我个人是很不喜欢填鸭式的教育的,那下面我已Button控件为大家抛砖引玉,教大家如何通过文档来学习
首先大家打开下载的Unity3D圣典,在索引界面输入"GUI",在右边的类函数一组选择"Button"
大家可以看到,button控件的返回值都是bool类型,即监控按钮是否被按下,各个参数在下边的参数列表都有详细的介绍,请大家记住GUIStyle这个参数,日后会为大家详细介绍
using UnityEngine; using System.Collections; public class Cube : MonoBehaviour { //定义一个贴图 public Texture tex; //标志第二个按钮是否显示 private bool isShow; // Use this for initialization void Start () { isShow = false; } // Update is called once per frame void Update () { } void OnGUI() { //实现点击按钮1,按钮2出现 if (GUI.Button(new Rect(0, 0, 100, 50), "button1")) { isShow = true; } if (isShow) GUI.Button(new Rect(0, 50, 100, 50), tex); } }
关于tex变量的赋值,我们可以这样做。
点击运行:
相关文章推荐
- 和小伙伴们一起学Unity3D(三)GUISkin 界面皮肤
- 我和小伙伴们一起学Unity3D(六)碰撞与触发器
- 和小伙伴们一起学Unity3D(七)摄像机
- 和小伙伴们一起学Unity3D(六)碰撞与触发器
- 和小伙伴们一起学Unity3D(一)
- 和小伙伴们一起学Unity3D(五)让角色更鲜活——刚体
- 我和我的小伙伴们一起学Unity3D(三)GUISkin 界面皮肤
- 和小伙伴们一起学Unity3D(四)角色移动之Transform
- 和小伙伴们一起学Unity3D(八)材质和纹理
- unity3d插件Daikon Forge GUI 中文教程-4-基础控件Checkbox和dropdownlis的使用
- [原]Unity3D深入浅出 - GUI控件
- Unity3D笔记之OnGUI()下的自适屏
- Unity3D中基本GUI控件介绍
- <Unity3D>Unity3D入门篇——第三讲 GUI控件(一)
- Unity3D笔记 GUI 四、实现选项卡三
- unity3D游戏开发十三之GUI
- Unity3D GUI笔记
- Unity3D 窗口GUI.Window(2) 用 javaScript
- Unity3D的GUI插件(UIToolkit,GUIX)
- 006-unity3d GUI初识、贴图、自定义鼠标指针