Genesis-3D 入门教程—18.基本UI及运行

转载 2013年12月04日 19:14:21

    该文章转载自Genesis-3D官网,

更多教程请访问Genesis-3D官网:http://www.genesis-3d.com.cn

基本UI及运行

这一章我们介绍一个UI系统的实例,包括怎么在UI编辑器里画一个简单的UI界面,将UI资源导入Genesis-3D编辑器工程目录下,编写简单代码运行,UI界面的美化。

1.画一个UI界面。我们这里使用LayoutEditor绘制一个简单的UI界面

(1) 添加一个Button:

(2) 修改其属性。命名为backgroundButton,同时Layer设置为overlapped(因为这是最底层):

(3) 继续添加一个Button,修改其属性。将name改为startButton:

(4) 继续添加一个Button,修改其属性。将name改为helloButton:

(5) 完成绘制后点击File—>Save as,用户可设定保存路径,这里我保存在D盘根目录下,重命名为start.layout文件。这里需要注意,重命名时需要加上.layout后缀名:

2.将UI资源导入到Genesis-3D编辑器的工程目录下

(1) 新建工程。名称为UI,选择存放工程的位置,由于我们要运行UI界面,所以这里要勾选UIMedia资源包,点击“创建”:

(2)选中“Asset”——>右键点击——>新建——>C#脚本文件,创建出两个脚本文件 UIRoot.cs和StartPanel.cs。UIRoot.cs是基础脚本,StartPanel.cs是控制UI界面的脚本:

(3) 保存场景。把它命名为UI:

(4) 将之前做好的start.layout复制到UI工程的资源目录下…\GenesisProjects\UI\Asset\UIMedia:

3.编写代码

(1) 进入…\GenesisProjects\UI\UserDefCSharp目录,找到代码文件。用MonoDevelop打开,编辑代码:

(2) 代码如图所示:

UIRoot.cs代码:

01 namespace UserDefGUI
02 {
03     public class UserDefGUIRoot : GUIRoot
04     {
05         static UserDefGUIRoot _instance = new UserDefGUIRoot();
06         static public UserDefGUIRoot Instance
07         {
08             get
09             {
10                 return _instance;
11             }
12         }
13  
14         public override void Init()
15         {
16             base.Init();
17             LoadLayout();
18         }
19  
20         void LoadLayout()
21         {
22             _startPanel.Init();
23         }
24  
25         StartPanel _startPanel = new StartPanel();
26  
27     }
28 }

StartPanel.cs代码:

01 using System;
02 using System.Runtime.CompilerServices;
03 using ScriptRuntime;
04 using ScriptGUI;
05  
06 namespace UserDefGUI
07 {
08     public class StartPanel
09     {
10         public void Init()
11         {
12             GUI.RegisterLayout(_windowName, @"start.layout"falsetrue);
13             GUI.SetLayoutVisible(_windowName, true);
14             GUI.UIWidget.SetVisible(_windowName, "helloButton"false);
15             GUI.UIWidget.SetEventMouseButtonClick(_windowName, "startButton", StartButtonClick, EventControl.Add);
16         }
17  
18         private void StartButtonClick(FString sender)
19         {
20             GUI.UIWidget.SetVisible(_windowName, "startButton"false);
21             GUI.UIWidget.SetVisible(_windowName, "helloButton"true);
22         }
23  
24         FString _windowName = "StartPanel";
25  
26     };
27 }

(3) 编译代码。代码编译成功后脚本文件才能正确运行,否则需要在Mono中进行脚本调试。具体调试步骤可以查看脚本调试示例:

4.运行游戏

(1) 发布游戏。勾选调试模式,便于调试。点击“发布游戏”:

(2) 将运行文件命名为UI.exe,保存到指定位置:

(3) 运行结果如下。界面中先出现startButton:

    点击startButton按钮以后,startButton消失,helloButton出现:

Genesis-3D新手入门教程集锦

专题介绍 Genesis-3D引擎由搜狐畅游投资3000万美元,耗时四年完成,开发团队近百人。它是中国首款自主研发的跨平台游戏引擎,同时也是全球首款3D商业级开源游戏引擎。本专题将围绕Genes...
  • pizi0475
  • pizi0475
  • 2015年07月09日 21:20
  • 843

Genesis-3D 入门教程—3.游戏的发布与运行

该文章转载自Genesis-3D官网,更多教程请访问Genesis-3D官网:http://www.genesis-3d.com.cn 游戏的发布与运行 当我们使用Genesis-3D...
  • u012993923
  • u012993923
  • 2013年12月04日 17:44
  • 893

Genesis-3D 入门教程—15.物理

该文章转载自Genesis-3D官网, 更多教程请访问Genesis-3D官网:http://www.genesis-3d.com.cn 物理 物理组件是实现游戏功能的重要组成部...
  • u012993923
  • u012993923
  • 2013年12月04日 18:22
  • 559

Genesis-3D学习手册——18.了解视锥体

了解视锥体 视锥体指的是一个金字塔被沿着平行于底面切去顶端的立体形状。这个形状是可以被看见和被摄像机渲染的区域。下面通过实验来说明为什么是这种情况。 想象一下,用一根笔直的棒子的一个端点对...
  • u012993923
  • u012993923
  • 2014年01月16日 18:00
  • 773

Genesis-3D 入门教程—16.声音

该文章转载自Genesis-3D官网, 更多教程请访问Genesis-3D官网:http://www.genesis-3d.com.cn 声音 众所周知,声音系统是一个游戏中非常...
  • u012993923
  • u012993923
  • 2013年12月04日 19:10
  • 735

Genesis-3D 入门教程—12.脚本调试

该文章转载自Genesis-3D官网, 更多教程请访问Genesis-3D官网:http://www.genesis-3d.com.cn 脚本调试 这个helloworld演示了...
  • u012993923
  • u012993923
  • 2013年12月04日 18:05
  • 697

Genesis-3D 入门教程—10.粒子系统

该文章转载自Genesis-3D官网,更多教程请访问Genesis-3D官网:http://www.genesis-3d.com.cn 粒子系统 粒子系统是Genesis-3D编辑器里...
  • u012993923
  • u012993923
  • 2013年12月04日 18:01
  • 629

Genesis-3D 入门教程—1.安装编辑器

安装编辑器 要使用Genesis-3D来制作游戏的第一步就是将Genesis-3D安装到您的计算机上。安装编辑器是一个很简单的过程,你可以简单点击连续下一步来完成整个过程。值得一提的是,如果您的电脑...
  • u012993923
  • u012993923
  • 2013年12月04日 17:39
  • 1373

Genesis-3D 入门教程—2.创建工程

该文章转载自Genesis-3D官网,更多教程请访问Genesis-3D官网:http://www.genesis-3d.com.cn 创建工程 开始制作一个游戏的第一步就是创建工程。...
  • u012993923
  • u012993923
  • 2013年12月04日 17:42
  • 577

Genesis-3D 入门教程—22.Actor模板功能

该文章转载自Genesis-3D官网, 更多教程请访问Genesis-3D官网:http://www.genesis-3d.com.cn Actor模板功能 Genesis-3D编辑器还...
  • u012993923
  • u012993923
  • 2013年12月06日 10:28
  • 707
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Genesis-3D 入门教程—18.基本UI及运行
举报原因:
原因补充:

(最多只允许输入30个字)