Unity3D GUI学习

Unity3D内置有GUI,

首先,使用GUI实现一个按钮,并且点击实现触发,

	void OnGUI()
	{
		//GUI.Button (new Rect (10,10,50,50), "nihaoa ");
		if(GUI.Button(new Rect (50, 50, 50, 50),"Button"))

		{
			Debug.Log("wo shi yi ge an niu");

		}

	}

 这里屏幕上会创建一个按钮,点击按钮,会出现下面那句话:

文本输入框的使用:

注意这里的赋值要赋值给自己,不然每一帧显示,会把前面的值刷掉的

using UnityEngine;
using System.Collections;

public class getbutton : MonoBehaviour {

	// Use this for initialization

	public Rect rec;
    public string text;
	void Start () {
       text  =  "请输入";
	}

	// Update is called once per frame
	void Update () {

	}

	void OnGUI()
	{

       text =  GUI.TextField(new Rect(0, 0, 100, 100), text);

	}

}

  

复选框:

using UnityEngine;
using System.Collections;

public class getbutton : MonoBehaviour {

	// Use this for initialization

    public bool toogbaleT = true;
    public bool toogbaleM = false;
	void Start () {

	}

	// Update is called once per frame
	void Update () {

	}

	void OnGUI()
	{

        toogbaleT = GUI.Toggle(new Rect(0, 0, 50, 50), toogbaleT, "体育");
        toogbaleM = GUI.Toggle(new Rect(55, 55, 50, 50), toogbaleM, "美术");

	}

}

可以实现,选择和取消的效果,每一次进行点击,都会刷新toogbaleT值来决定显示的效果:

进度条的实现:

using UnityEngine;
using System.Collections;

public class getbutton : MonoBehaviour {

	// Use this for initialization

    public float hsliaervalue = 0f;

	void Start () {

	}

	// Update is called once per frame
	void Update () {

	}

	void OnGUI()
	{

        hsliaervalue = GUI.HorizontalSlider(new Rect(140, 210, 100, 30), hsliaervalue, 0, 10);

	}

}

  效果图:

时间: 2024-11-07 22:25:52

Unity3D GUI学习的相关文章

[学习一个] Matlab GUI 学习笔记 Ⅰ

Matlab GUI 学习笔记 Ⅰ 1. Foreword Matlab 是严格意义上的编程语言吗?曾经有人告诉我他是通过 Matlab 学会了面对对象编程,我是不信的,但这依然不妨碍它在特殊领域的强大功能.因为选修了这1个学分的 Matlab GUI 设计,亦有人表达了对Previous Matlab Blog的一些情绪,便写上一些 Matlab GUI 编程学习的心得. 标题虽为Matlab GUI 学习笔记 Ⅰ,亦可成为称为图像处理技术应用实践 - 课程设计 1 指北. 本文所用环境为 M

从零开始学习UNITY3D(GUI篇 GUI.Window)

unity3d里面,也是包含window窗体的,下面看一下GUI.Window方法的详情 下面我们用代码实现一个通过开关显示窗体的隐藏和显示的功能,代码如下: public class windowsscript : MonoBehaviour { bool windowshow=true; Rect windowrect=new Rect(0,0,120,50); void OnGUI() { //定义一个toggle控制窗体的显示和隐藏 windowshow=GUI.Toggle(new R

从零开始学习UNITY3D(GUI篇)

邻近年底,心也有些散乱,加上工作忙了一阵,在达内培训的课程也落下了不少.对unity3d的热度似乎也有点点下降.痛定思痛,又在淘宝上买了写蛮牛网的视频.总之不管是用任何手段都要逼着自己不要浪费了培训的那些钱.言归正传,现在开启GUI篇章. GUI这东西在我脑子里,自动归结为.net的用户交互控件,实际上应该也就是这个样子,类似于button,lable,textbox....的这些东西在GUI里面都有. 这一节讲一些简单的GUI. 先来看效果图: 1,红框部分,button按钮的text值随着在

从零开始学习UNITY3D(GUI篇 群组视图控件)

控件组可以看成一个大的容器,控件组里面的控件,相对位置已该控件组为基准,而不再已屏幕左上角为基准. 下面来看一下代码实例及其效果截图: public class GUI2 : MonoBehaviour { int toolbarInt=0;//代表默认第n-1个按钮是激活的 string[] toolbarstring={"工具","窗体","帮助"};//按钮名称个数和集合 int selectgrid=0; string[] selectg

从零开始学习UNITY3D(GUI篇 2)

复合控件极其使用,toolbar,selectgrid 先看效果图: toolbar可以看作是一个button按钮的集合,一次只能点击一个按钮, selectgrid又可以堪称是一个toolbar的集合. 代码如下: using UnityEngine; using System.Collections; public class GUI2 : MonoBehaviour { int toolbarInt=0;//代表默认第n-1个按钮是激活的 string[] toolbarstring={"

关于unity3D的学习感想

在老师布置团队项目后组长确定项目是做游戏是,我才接触的Unity3D游戏引擎. 因为一开始我没有接触过这类软件,更没有用过.所以作为一个新手,做好的办 法实在网上找教程.网上说Unity3D是由Unity Technologies开发的一个让你轻 松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台 的综合型游戏开发工具,是一个全面整合的专业游戏引擎. 一开始在网上我查的unity圣典社区是专门搞这个的社区 (http://www.ceeger.com/forum/) 于是我就

Unity3D脚本学习——运行时类

AssetBundle 类,继承自Object.AssetBundles让你通过WWW类流式加载额外的资源并在运行时实例化它们.AssetBundles通过BuildPipeline.BuildAssetBundle创建. 参见:WWW.assetBundle ,Loading Resources at Runtime ,BuildPipeline.BuildPlayer function Start () { var www = new WWW ("http://myserver/myBund

python GUI学习——Tkinter

支持python的常见GUI工具包: Tkinter 使用Tk平台 很容易得到 半标准 wxpython 基于wxWindows.跨平台越来越流行 Python Win 只能在Windows上使用 使用了本机的Windows GUI功能 Java Swing 只能用于Jython 使用本机的Java GUI PyGTK 使用GTK平台 在linux上很流行 PyQt 使用QT平台 跨平台 Tkinter学习 介绍以下几个控件的用法 Label Frame Entry Text Button Li

unity3d shader 学习笔记1

在unity中我们经常会使用shader,但是从来没有深究过,最近在做项目时遇到相关问题,无从下手,决定系统学习一番,在此前提下把我学习的过程做一个记录.学习过程中参考了浅墨和风宇冲两位高人的博客,本文有不对的地方,还望指正. 按照学习技术的习惯,在第一次接触shader时,我们首先会想这两个个问题, 问题一:什么是shader,它能做什么? 问题二:unity中shader使用的语言是什么? 问题一:shader,也就是着色器,它本质就是一段程序,这段程序的作用是把Mesh(网格)以指定的方式