目录
第 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