logo
分类于: 计算机基础 设计

简介

Unity 3D NGUI实战教程

Unity 3D NGUI实战教程 0.0分

资源最后更新于 2020-03-29 04:44:12

作者:高雪峰

出版社:出版社人民邮电出版社

出版日期:2015-03

ISBN:9787115385468

文件格式: pdf

标签: 游戏 计算机 设计 程序 NGUI

简介· · · · · ·

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代码的设计和优化、项目案例实战分析、背包界面的制作等核心技术,最后用一章归纳了NGUI常见疑难问题,以便读者遇到问题时可以随时参考。本书适合新上手的Unity客户端程序员、需要做UI的Unity程序员、想自学Unity做独立游戏开发的人员,以及大专院校相关专业的师生学习用书和培训学校的教材。高雪峰:现在为游戏制作人,曾经担任游戏策划、主策划、Unity程序员等职位,开发过端游、页游、手游等游戏项目,带团队做过多个商业项目,对游戏的研发过程具有丰富的经验和实战技能。对NGUI有深入的研究,并且全部应用于项目实战,本书是作者多年实战经验的总结,定会给读者带来很多有益的实战启示。

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

已收: 表示已经收藏

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

目录

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