logo
分类于: 编程语言 人工智能

简介

Unity 3D NGUI 实战教程

Unity 3D NGUI 实战教程 0.0分

资源最后更新于 2020-11-20 04:56:59

作者:高雪峰

出版社:人民邮电出版社

出版日期:2015-01

ISBN:9787115385468

文件格式: pdf

标签: Unity NGUI 游戏 游戏技术 技术 不知道是用地 unity哪个版本 Unity,

简介· · · · · ·

NGUI是专门针对Unity引擎、用C#语言编写的一套插件,它已经成为了目前世界上应用最广、最成熟的Unity制作UI的插件,完美地弥补了Unity引擎原生GUI系统和NewGUI系统的各种不足。程序员可以利用它提供的一整套UI框架和事件通知系统来进行自己项目的UI设计和制作。本书不仅讲解了必知必会的NGUI的基础知识,更是以项目实战为目的,涵盖了大量的项目实战中的经验之谈和技巧总结,用以帮助读者达到学以致用的目的。

本书的主要内容:初识NGUI、UI开发的流程、NGUI强大优势、制作第一个UI图集、创建一个3D UI、查看和管理UI的深度、制作基础的UI控件、让UI动起来——UI动画、NGUI进阶、使用Panel管理面板、NGUI实战进阶、UI开发核心问题——UI随屏幕自适应、实战开发中UI资源制作标准、跨平台制作UI资源、UI结构设计、UI代码的...

直接下载

想要: 点击会收藏到你的 我的收藏,可以在这里查看

已收: 表示已经收藏

Tips: 注册一个用户 可以通过用户中心得到电子书更新的通知哦

目录

目 录
第1章 初识NGUI 1
1.1 游戏UI开发介绍 1
1.1.1 什么是游戏UI 1
1.1.2 UI为何如此重要 1
1.1.3 UI开发的流程 2
1.1.4 UI开发的难点 2
1.2 什么是NGUI 3
1.2.1 NGUI插件介绍 3
1.2.2 NGUI的强大优势 3
第2章 NGUI基础 5
2.1 导入NGUI插件 5
2.1.1 NGUI版本介绍 5
2.1.2 NGUI的下载和购买 5
2.1.3 导入NGUI插件应用 6
2.1.4 导入常见问题 9
2.2 认识基本的UI资源 10
2.2.1 什么是UI精灵(Sprite) 10
2.2.2 什么是UI图集(Atlas) 10
2.2.3 什么是UI贴图(Texture) 10
2.2.4 什么是UI标签(Label) 12
2.2.5 什么是UI字体(Font) 12
2.3 制作第一个UI图集 13
2.3.1 学会解剖UI的资源结构 13
2.3.2 如何导入切好的美术资源 15
2.3.3 用Atlas Maker制作图集 16
2.4 制作第一个UI字体 20
2.4.1 为什么要制作UI字体 20
2.4.2 静态字体和动态字体 20
2.4.3 制作静态字体介绍 21
2.4.4 制作动态字体介绍 22
2.5 创建第一个UI 22
2.5.1 创建一个2D UI 22
2.5.2 创建一个3D UI 24
2.5.3 了解UIRoot、UIPanel和UICamera组件 24
2.6 2DUI和3DUI的工作原理 28
2.6.1 2DUI的工作原理 28
2.6.2 3DUI的工作原理 30
2.6.3 如何判断该选择哪一种UI 31
2.7 深度(Depth)概念 31
2.7.1 强化对深度的理解 31
2.7.2 小心相机的深度 32
第3章 核心组件 34
3.1 什么是UI控件 34
3.2 制作精灵(UISprite) 34
3.2.1 怎样判断是否应该使用精灵 34
3.2.2 创建精灵 35
3.2.3 Sprite组件的设置 37
3.3 制作标签(Label) 43
3.3.1 怎样判断是否应当使用标签 43
3.3.2 创建标签 43
3.3.3 Label的文字设置 43
3.4 制作UI纹理(UITexture) 46
3.4.1 什么情况下使用UITexture 46
3.4.2 创建纹理 46
3.4.3 纹理的设置 46
3.5 制作按钮(Button) 48
3.5.1 怎样判断应该使用按钮 48
3.5.2 创建按钮 49
3.5.3 核心组件BoxCollider 49
3.5.4 核心组件UIButton 52
3.5.5 制作按钮的放缩动画 54
3.5.6 制作按钮的偏移动画 55
3.5.7 制作按钮的旋转动画 56
3.5.8 添加按钮单击音效 56
3.5.9 任何事物都可以变成按钮,
不仅仅是UI 57
3.6 制作进度条(UISlider) 58
3.6.1 怎样判断是否应当使用
进度条 58
3.6.2 创建进度条 59
3.6.3 核心组件UISlider设置 60
3.6.4 进度条的BoxCollider说明 62
3.7 制作输入框(Input) 63
3.7.1 怎样判断是否应当使用
输入框 63
3.7.2 创建输入框 63
3.7.3 核心组件Input设置 64
3.7.4 输入框使用的一些
注意事项 67
3.8 制作滚动视图(ScrollView) 68
3.8.1 怎样判断是否应当使用
滚动视图 68
3.8.2 创建滚动视图 69
3.8.3 滚动视图核心组件
UIPanel 69
3.8.4 滚动视图核心组件
UIScrollView 72
3.8.5 创建一个拖动条 75
3.8.6 拖动条说明 76
3.8.7 让视图内的内容可以
被拖动 77
3.8.8 制作滚动视图时的
注意事项 78
3.9 制作复选框(Toggle) 79
3.9.1 怎样判断是否应当使用
复选框 79
3.9.2 创建复选框 79
3.9.3 复选框的核心组件
UIToggle 80
3.10 制作下拉菜单(PopupList) 82
3.10.1 怎样判断是否应当使用
下拉菜单 82
3.10.2 创建下拉菜单 82
3.10.3 显示当前选中的选项 84
3.10.4 下拉菜单核心组件
PopupList 85
3.10.5 制作下拉菜单的注意事项 87
第4章 UI动画 88
4.1 常见的两种UI动画介绍 88
4.1.1 要区分UI动画和UI特效
两个概念 88
4.1.2 关于Tween动画 88
4.1.3 关于Animation动画 89
4.2 渐隐渐现动画(透明度动画) 89
4.2.1 透明度动画的介绍和应用 89
4.2.2 使用透明度动画
TweenAlpha 90
4.2.3 使用透明度动画的注意点 94
4.3 颜色变化动画(变色动画) 95
4.3.1 变色动画的介绍和应用 95
4.3.2 使用颜色动画TweenColor 96
4.3.3 使用颜色动画的注意点 96
4.4 位置变换动画(位移动画) 97
4.4.1 位移动画的介绍和应用 97
4.4.2 使用位移动画
TweenPosition 98
4.4.3 使用位移动画的注意点 98
4.5 旋转变化动画(旋转动画) 99
4.5.1 旋转动画的介绍和应用 99
4.5.2 使用旋转动画
TweenRotation 99
4.5.3 使用旋转动画的注意点 100
4.6 大小变化动画(放缩动画) 100
4.6.1 放缩动画的介绍和应用 100
4.6.2 使用放缩动画
TweenScale 101
4.6.3 使用放缩动画的注意点 101
4.7 Tween动画总结 102
4.8 动画控制组件UIPlayTween 102
4.8.1 为什么要用UIPlayTween 102
4.8.2 动画核心组件UIPlayTween
讲解 103
4.8.3 使用UIPlayTween的
注意事项 106
4.9 动画控制组件UIPlayAnimation 107
4.9.1 为什么要用
UIPlayAnimation 107
4.9.2 为UI添加Animation组件 107
4.9.3 动画核心组件
UIPlayAnimation讲解 108
4.9.4 使用UIPlayAnimation
注意事项 110
第5章 其他组件 111
5.1 使用Toggle制作页签 111
5.1.1 页签的工作原理 111
5.1.2 一个完整的页签界面 111
5.1.3 制作两个页签按钮 111
5.1.4 使用ToggleObjects来记录
页签内容 114
5.1.5 制作页签注意事项 115
5.2 拖动摄像机来浏览超大界面 115
5.2.1 拖动相机功能的介绍
和应用 115
5.2.2 核心原理和组件介绍 117
5.2.3 拖动相机浏览超大界面
的注意事项 119
5.3 使用Grid自动排列UI 120
5.3.1 自动排列UI的应用 120
5.3.2 自动排列UI核心组件
Grid介绍 120
5.4 使用DragObject直接拖动物体 122
5.5 让玩家通过拖动自由改变
控件大小 124
5.6 制作序列帧精灵动画
(SpriteAnimation) 125
5.6.1 什么是序列帧精灵动画 125
5.6.2 SpriteAnimation组件 125
第6章 NGUI实战进阶 127
6.1 UI开发核心问题——UI随屏幕
自适应 127
6.1.1 屏幕分辨率对UI适配
的影响 127
6.1.2 主流设备的屏幕分辨率 129
6.1.3 自适应核心组件Anchor
的使用 130
6.1.4 使用Anchor的注意事项 133
6.1.5 正式开发UI之前必须明确
的几个问题 134
6.2 UI元素的相对自适应 134
6.2.1 什么是UI元素的相对
自适应 134
6.2.2 Anchors的介绍及使用 134
6.2.3 使用Anchors的范例:
背景图的全屏适配 137
6.2.4 使用Anchors的注意事项 138
6.3 多摄像机同时协作运行 139
6.3.1 摄像的渲染层的概念 139
6.3.2 多摄像机协作的应用范围 140
6.3.3 如何创建多个UI摄像机 140
6.3.4 多摄像机协作的注意事项 142
6.4 巧用九宫格以减少UI资源量 142
6.4.1 项目安装包大小对项目
的影响 142
6.4.2 UI资源量对资源包大小和
内存的影响 143
6.4.3 什么是九宫格UI 143
6.4.4 如何让美术提供合适的
九宫格UI资源 144
6.4.5 如何在NGUI中划分
九宫格 144
6.4.6 如何使用九宫格UI 147
6.4.7 去掉Mipmap以进一步降低
资源包大小和内存占用 148
6.5 实战开发中UI资源制作标准 148
6.5.1 为什么要设定UI资源
制作标准 148
6.5.2 资源制作标准设定建议 149
6.5.3 程序如何保证UI资源的
分辨率不失真 150
6.5.4 针对各大平台设置单独的
尺寸和格式 150
6.6 UI事件监听的击穿 151
6.6.1 什么是UI事件监听
的击穿 151
6.6.2 如何避免和解决UI事件
监听的击穿 152
6.6.3 事件监听遮挡的妙用 153
6.7 开发之前的思考——UI结构
设计 153
6.7.1 什么是UI结构设计 153
6.7.2 UI结构设计遵循的一些
要点 153
6.7.3 需要的时候,分场景以减轻
内存负担 154
第7章 用代码深度控制UI 155
7.1 代码操作NGUI的原理 155
7.1.1 物体与组件的概念 155
7.1.2 怎样用代码操作NGUI 155
7.1.3 获取组件的几种方法 158
7.1.4 迅速判断可以修改
的成员 160
7.2 动态加载UI元素 161
7.2.1 为什么游戏中会用到动态
加载UI元素 161
7.2.2 擅用UI元素的Prefab 161
7.2.3 将一个物体设置为另一个物
体的子物体——NGUITools.
AddChild()方法 162
7.2.4 NGUITools.AddChild()和
Instantiate的区别 163
7.3 擅用EventDelegate事件委托 164
7.3.1 什么是EventDelegate
事件委托 164
7.3.2 事件委托的用法 164
7.3.3 哪些地方可以使用
事件委托 166
7.4 巧用EventTrigger组件 167
7.4.1 什么是EventTrigger
组件 167
7.4.2 EventTrigger用法 168
7.5 常用组件的功能调用 168
7.5.1 UILabel 168
7.5.2 UISprite 169
7.5.3 UITexture 170
7.5.4 UIButton 170
7.5.5 UIGrid 171
7.5.6 UISlider 171
7.5.7 UIToggle 172
7.5.8 UIInput 172
7.5.9 UIPanel 173
7.5.10 UICamera 173
7.6 动画的控制 174
7.6.1 为什么要把动画单独
提取出来 174
7.6.2 控制Tween动画 174
7.6.3 关于PlayTween和
PlayAnimation 176
第8章 实用案例演示 177
8.1 角色头像状态栏制作 177
8.1.1 示意图和需求分析 177
8.1.2 设计并制作UI 178
8.1.3 设计并编写代码 181
8.2 场景加载的进度条界面制作 187
8.2.1 为什么要做这个界面 187
8.2.2 异步加载的概念 187
8.2.3 制作一个单独的加载
界面场景 188
8.2.4 设计并编写代码 189
8.3 技能快捷栏的制作 194
8.3.1 示意图和需求分析 194
8.3.2 设计并制作UI 194
8.3.3 设计并编写代码 197
8.4 角色头顶血条的跟随 202
8.4.1 角色头顶血条的跟随分析 202
8.4.2 制作血条的UI 202
8.4.3 设计并编写代码 203
8.5 NGUI多语言切换的实现 206
8.5.1 什么是本地化 206
8.5.2 NGUI本地化的原理 206
8.5.3 本地化案例演示 210
第9章 常见疑难问题解答 214
9.1 关于NGUI版本问题 214
9.2 导入NGUI资源包出错 214
9.3 如何创建两个UIRoot 215
9.4 如何让粒子在界面上正确显示 215
9.5 为什么在父物体上增加透明度
动画,子物体没有跟着变化 216
9.6 为什么动画播放一遍之后无法
再次正常播放 216
9.7 为什么3DUI模式下,UI资源
的尺寸Snap后和屏幕的大小比
例不一致 216
9.8 为什么UI不受灯光影响 217
9.9 为什么3D模型放到UIRoot下
就变得看不见了 217
9.10 为什么UI单击后无法
播放音效 217
9.11 为什么Depth更大的图片反而
被Depth小的图片遮住 218
9.12 怎样判断点中的东西是UI 218
9.13 为什么Label的文字始终
不够清晰、明亮 218
9.14 为什么创建的物体有BoxCollider
却无法接收事件 219
9.15 为什么改变了控件的父物体,
导致了显示层级错乱 220
9.16 关于ScrollView滑动的问题 220