近期热门
原创简单gui菜单教程

[U3D] 原创简单gui菜单教程

[复制链接]
9599 5 0 0 13年前
前段一个小demo中用到的gui控制菜单,具体效果可查看U吧作品区。先发下最终的gui截图:
0.jpg
大体制作流程:
1、根据需要,在photoshop中设计出交互界面,当然,如果你不太注重美观的话,可以直接在untiy3d里进行gui外观实现,unity3d默认带有一套gui外观样式。
2、根据你所期望的交互需求,确定你要用到unity3d gui系统中哪些元素,如box、button等。在上图所示的画面中,用到了三种元素:Box,Button,SelectionGrid,三者各一,另外还有用到多个GUIStyle,即样式表,作用于前面三种元素。
3、针对显示需求,将psd文件简化合层,争取图片数用到最少。
4、一切准备就绪后,就可以开始写script了,写完附件到Main Camera上,如果用到GUIStyle,还要在属性面板中具体设定各参数。
下面开始具体的制作过程...
1.jpg

接前一部分教程,下面开始具体的制作过程。

1、确定代码

主要有两个区域,上部的按钮,及下方的子菜单部分。此处的交互就是点击上部按钮,显示或隐藏下部子菜单,所以此处用了两段代码来实现,显示隐藏是通过禁用下方gui代码文件来实现的,当然,也可以写的一个代码文件里。

2、代码讲解

此文件为display.js,用来实现上部按钮功能

var Pcontrol:Pcontrol;//声明脚本对象

var Pdisplay:int=0;//声明一变量,用来存储子菜单的显示状态

var PDbg:GUIStyle;//声明样式

function OnGUI () {

//实现Button代码,单击时切换显示状态变量

if (GUI.Button (Rect (10,0,279,30)," ",PDbg)) {

if(Pdisplay==0){

Pcontrol.enabled=false;

Pdisplay=1;

}else{

Pcontrol.enabled=true;

Pdisplay=0;

}

}

}



第二个脚本文件Pcontrol.js

//声明样式、背景图片、按钮列表、空数组

var customBox : GUIStyle;

var customButton:GUIStyle;

var bgImage : Texture2D;

var selectionGridInt : int = 0;

var selectionStrings : String[] = [" ", " ", " "];



//子菜单实现

function OnGUI () {

// Make a background box

GUI.Box (Rect (10,30,279,418)," ",customBox);

selectionGridInt = GUI.SelectionGrid (Rect (25, 54, 244, 134), selectionGridInt, selectionStrings, 1,customButton);

print(selectionGridInt);

}

代码完成后,附加到主摄像机上即可,然后设置各参数及变量

3、外观样式设置,共用到三个样式PDbg、customBox 、customButton,选择各样式,在属性面板中设置不同状态时的参数。

本教程所用的源文件下载地址:

http://unity3d8.com/content/原创简单gui菜单资源包
0
点赞
0
打赏
0
添加到收藏夹

0

点击复制链接

使用微信扫码分享
一次扣10个券
全部评论5
您需要登录后才可以回帖 登录

打开下载链接不存在。
12年前  ·  6楼
回复

使用道具 举报

支持
12年前  ·  5楼
回复

使用道具 举报

真的假的
13年前  ·  4楼
回复

使用道具 举报

o?广告贴么
13年前  ·  3楼
回复

使用道具 举报

具体过程怎么只有一张图片啊?
13年前  ·  2楼
回复

使用道具 举报

您当前使用的浏览器IE内核版本过低会导致网站显示错误

请使用高速内核浏览器或其他浏览器