搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
libGDX移动游戏开发从入门到精通
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787115407993
  • 作      者:
    黄俊东著
  • 出 版 社 :
    人民邮电出版社
  • 出版日期:
    2016
收藏
编辑推荐
全面介绍了使用libGDX进行游戏开发时所需要用到的知识
实用性强,内容详细,不仅适合有一定经验的开发者,对于那些没有经验的开发者来说,也是一本很好的入门指南。
作者曾就任于创新工场等大型公司,CSDN的博客专家,具有丰富的开发经验。

libGDX是一个跨平台的2D/3D的游戏开发框架,是一款游戏引擎。
本书全面介绍了使用libGDX进行游戏开发时所需要用到的知识。其中包括libGDX的详细介绍、libGDX的UI编程、libGDX的配套开发工具、libGDX 中所遇到的一些问题的解决方案。

本书具有以下特色:
起点低:面向没有编程经验的读者,能从零开始学会游戏开发 。
看得懂:每个知识点都配有实例,帮助读者在实践中加深理解。
学得会:所有实例都配有详细的注释,让读者明白每行代码的意义。
用得着:学完本书,读者将能独立开发出一款属于自己的游戏。
展开
作者简介
黄俊东,大众点评 客户端研发工程师。南京邮电大学毕业,曾就任于创新工场等大型公司,CSDN的博客专家。具有丰富的开发经验,具有3年Android平台上的开发经验,熟悉Java Web开发、Android开发和游戏开发。开发并发布过多个APP和游戏,如《Fashion Girls》等Google Play上较为火热的游戏,尤其对libGDX开发有深入的研究。
展开
内容介绍
随着移动互联网的快速发展,移动端的游戏开发已经成为发展迅速、市场潜力巨大、前景诱人的开发方向。作为一种游戏引擎,libGDX让更多梦想加入游戏开发的人圆梦。本书全面介绍了使用libGDX进行游戏开发时所需要用到的知识,其中包括libGDX的详细介绍、libGDX的UI编程、libGDX的配套开发工具、libGDX 中所遇到的一些问题的解决方案。
本书并不局限于介绍libGDX编程的各种理论知识,而是从“项目驱动”的角度来讲授理论,全书给出了丰富的实例,这些示范性的实例既可帮助读者更好地理解各知识点在实际开发中的应用,也可供读者在实际开发时作为参考。本书还提供了两个实用的案例:捡金币项目和2048项目,具有很高的参考价值。
本书实用性强,内容详细,不仅适合有一定经验的开发者,对于那些没有经验的开发者来说,也是一本很好的入门指南。
展开
目录
第1章 libGDX简介 1
1.1 libGDX介绍 1
1.1.1 libGDX的特点 1
1.1.2 libGDX中的工具 3
1.1.3 libGDX的历史 5
1.1.4 我的libGDX版本 5
1.2 搭建libGDX开发环境 5
1.2.1 libGDX下载 6
1.2.2 Android项目的新建 7
1.2.3 libGDX的安装 9
1.3 开始第一个libGDX游戏 11
1.3.1 第一个HelloWorld程序的编写 11
1.3.2 在Android设备上调试 15
1.3.3 桌面调试环境的搭建 17
1.3.4 HelloWorld程序的简单分析 22
1.4 运行libGDX的官方Demo 23
1.4.1 libGDX的官网 23
1.4.2 Demo的下载演示 24
1.5 其他的一些准备工作 25
1.5.1 关联Android源码 25
1.5.2 libGDX源码的关联 28
1.5.3 直接打开.jar文件的配置 30
第2章 libGDX的架构分析 34
2.1 生命周期 34
2.1.1 libGDX中生命周期的图示 34
2.1.2 生命周期中各个函数的分析 35
2.1.3 实例:通过例子深刻理解生命
周期 35
2.2 模块 38
2.2.1 libGDX模块组成的图示 38
2.2.2 libGDX模块的分析 39
2.3 运行环境的相关查询 40
2.3.1 获取目前的运行环境 40
2.3.2 获取内存的消耗情况 41
2.4 日志工具 41
2.4.1 Android中的日志等级及输出方法 41
2.4.2 libGDX中的日志等级及输出方法 42
2.4.3 一种方便的输出日志的方法 44
第3章 数据存储 45
3.1 简介 45
3.2 Android中SharedPreferences的使用 45
3.2.1 获得一个SharedPreferences对象 46
3.2.2 从SharedPreferences获取数据 46
3.2.3 往SharedPreferences 保存数据 46
3.2.4 实例:使用Android中的
SharedPreferences来实现
存取数据 47
3.3 libGDX对SharedPreferences的支持 49
3.3.1 获得一个SharedPreferences数据 49
3.3.2 从SharedPreferences获取数据 49
3.3.3 往SharedPreferences保存数据 49
3.3.4 实例:使用libGDX对
SharedPreferences的支持
来实现数据的存取 50
3.4 Android中操作XML形式的数据 51
3.4.1 XML的定义 51
3.4.2 XML的优缺点 52
3.4.3 Android中使用DOM来解析
XML形式的数据 52
3.4.4 Android中使用DOM来生成
XML形式的数据 55
3.4.5 Android中使用SAX来解析
XML形式的数据 58
3.4.6 Android中使用SAX来生成
XML形式的数据 61
3.4.7 Android中使用PULL来解析
XML形式的数据 64
3.4.8 Android中使用PULL来生成
XML形式的数据 67
3.5 libGDX对XML的支持 70
3.5.1 使用libGDX中的接口将生成
XML形式的数据 70
3.5.2 使用libGDX中的接口解析
XML形式的数据 72
3.6 Android中操作JSON格式的数据 74
3.6.1 JSON的定义 74
3.6.2 JSON的优缺点 74
3.6.3 Android中JSON的原始解析
方法 75
3.6.4 Android中JSON的原始生成
方法 78
3.6.5 Android中使用Gson来解析
JSON形式的数据 79
3.6.6 Android中使用Gson来生成
JSON形式的数据 80
3.6.7 Android中使用FastJson来解析
JSON形式的数据 81
3.6.8 Android中使用FastJson来生成
JSON形式的数据 83
3.6.9 以上3种操作JSON格式数据的
方法的简单比较 83
3.7 libGDX中对JSON格式数据的支持 83
3.7.1 使用libGDX中的API生成
JSON形式的数据 83
3.7.2 使用libGDX中的API解析
JSON形式的数据 86
3.8 XML与JSON的简单比较 86
3.8.1 关于轻量级和重量级 86
3.8.2 关于数据格式编码及解析难度 87
3.9 libGDX中的文件处理 87
3.9.1 几种文件存储路径 88
3.9.2 检查存储路径是否可用 88
3.9.3 获得一个FileHandle实例 89
3.9.4 对FileHandle的常见操作 89
3.9.5 读取文件 90
3.9.6 写文件 90
3.9.7 使用FileHandle来删除、拷贝、
移动、重命名文件 90
第4章 libGDX中的UI编程 92
4.1 绘制的基础—SpriteBatch类的介绍 92
4.1.1 SpriteBatch的功能 92
4.1.2 基本API 92
4.2 中文字符的显示—hiero工具的
介绍与基本使用 92
4.2.1 hiero工具的下载 93
4.2.2 hiero的功能界面剖析 93
4.2.3 利用hiero生成程序中要用的
字体文件 94
4.3 文本信息的显示—BitmapFont类的
基本使用 95
4.3.1 BitmapFont的功能 95
4.3.2 基本API 95
4.3.3 实例:使用BitmapFont来显示
一段文本信息 95
4.4 自定义的中文字体的显示
—TTF字库的介绍与使用 97
4.4.1 功能 97
4.4.2 基本API 97
4.4.3 使用优美字体前的准备 98
4.4.4 实例:显示一段帅气的文本 98
4.5 图片的显示(1)—Texture类的介绍
及基本使用 100
4.5.1 功能 100
4.5.2 基本API 100
4.5.3 实例:使用SpriteBatch和Texture
在屏幕中显示一张图片 101
4.6 图片的显示(2)—TextureRegion
类的介绍与基本使用 103
4.6.1 功能 103
4.6.2 基本API 103
4.6.3 实例:使用SpriteBatch和
TextureRegion在屏幕中显示
一张图片 104
4.7 图片的显示(3)—Sprite类的介绍
与基本使用 105
4.7.1 功能 105
4.7.2 基本API 105
4.7.3 实例:旋转的精灵 106
4.8 libGDX中的合图(1)—合图工具
TexturePacker 的介绍与基本使用 107
4.8.1 TexturePacker的下载 108
4.8.2 TexturePacker功能界面剖析 108
4.8.3 利用TexturePacker进行合图 109
4.9 libGDX中的合图(2)—TextureAtlas
类的介绍与基本使用 111
4.9.1 功能 111
4.9.2 基本API 111
4.9.3 实例:使用TextureAtlas后的
图片的使用 111
4.10 自定义动画—Animation类的介绍
与基本使用 113
4.10.1 功能 113
4.10.2 基本API 113
4.10.3 实例:奔跑的小人 114
4.11 libGDX中的粒子编辑器(1)
—Particle-Editor的介绍与基本使用 116
4.11.1 下载 116
4.11.2 功能界面剖析 117
4.11.3 利用粒子编辑器生成相应文件 118
4.12 libGDX中的粒子编辑器(2)
—ParticleEffect类的介绍与基本
使用 119
4.12.1 功能 119
4.12.2 基本API 119
4.12.3 实例:类似于微信的烟火效果 119
第5章 libGDX中的常见UI组件 122
5.1 演员与舞台的简单介绍 122
5.2 文本信息的显示—Label、LabelStyle类的介绍与基本使用 122
5.2.1 功能 122
5.2.2 基本API 122
5.2.3 实例:用Label显示一段文本
信息 123
5.3 图片的显示—Image类的介绍与
基本使用 124
5.3.1 功能 124
5.3.2 基本API 125
5.3.3 实例:实现一个“旋转的飞机” 125
5.4 Image生成的另外一种方式—Pixmap
类的介绍与基本使用 126
5.4.1 功能 127
5.4.2 基本API 127
5.4.3 实例:使用Pixmap来画多种
几何图形 127
5.4.4 实例:使用Pixmap来生成
涂抹功能 129
5.4.5 Pixmap在使用时需要注意的
问题—白屏问题 133
5.5 图片翻转的两种方式 134
5.5.1 图片翻转的第一种方式—
使用TextureRegion的flip( ) 134
5.5.2 图片翻转的第二种方式—
通过SpriteBatch的draw()方法 135
5.6 滚动条—ScrollPane的介绍与基本
使用 137
5.6.1 功能 137
5.6.2 基本API 137
5.6.3 实例:使用ScrollPane实现一个
选关界面 137
5.7 游戏中的背景移动 139
5.7.1 原理分析 139
5.7.2 实现天天打飞机中的“背景
移动” 141
5.8 演员的常见动画的介绍与基本使用 143
5.8.1 旋转动画—rotateTo与rotateBy 144
5.8.2 位移动画—moveTo与moveBy 144
5.8.3 透明度渐变动画—fadeIn()
与fadeOut() 145
5.8.4 缩放动画—scaleTo()与scaleBy() 145
5.8.5 组合动画—顺序动画与并行
动画 145
5.8.6 实例:Tween动画的综合例子 146
5.9 按钮—Button类的介绍与基本使用 148
5.9.1 功能 148
5.9.2 基本API 148
5.9.3 实例:使用Button来控制一个
loading图片 149
5.10 游戏摇杆—TouchPad的介绍与
基本使用 153
5.10.1 功能 153
5.10.2 基本API 154
5.10.3 实例:使用游戏摇杆控制
游戏元素 155
5.11 滑块—Slider的介绍与基本使用 159
5.11.1 功能 159
5.11.2 基本API 160
5.11.3 实例:使用滑块Slider来控制
游戏元素的缩放 161
5.12 分割窗口—SplitPane的介绍与
基本使用 165
5.12.1 功能 166
5.12.2 基本API 166
5.12.3 实例:使用分割窗口SplitPane
来实现一个分割窗口 167
5.13 复选框—CheckBox的介绍与基本
使用 170
5.13.1 功能 171
5.13.2 基本API 171
5.13.3 实例:使用复选框CheckBox
来控制画面的切换 172
5.14 列表—List的介绍与基本使用 176
5.14.1 功能 176
5.14.2 基本API 177
5.14.3 实例:使用列表List来显示
内容 178
5.15 文本输入框—TextField的介绍与
基本使用 181
5.15.1 功能 181
5.15.2 基本API 181
5.15.3 实例:使用文本输入框TextField
来实现文本信息的输入 183
第6章 libGDX中的事件处理与音效 188
6.1 InputProcessor的介绍与基本使用 188
6.1.1 InputMultiplexer的介绍与基本
使用 189
6.1.2 实例:使用按钮来操控滚动条 190
6.2 振动器的介绍与使用 192
6.2.1 准备工作—添加相应的权限 192
6.2.2 基本API 193
6.2.3 实例:按按钮触发振动 193
6.3 back键和menu键的捕捉 194
6.4 短音频文件的处理—Sound类的介绍
与基本使用 195
6.4.1 功能 195
6.4.2 基本API 195
6.4.3 实例:给按钮添加单击声音 195
6.5 长音频文件的处理—Music类的介绍
与基本使用 196
6.5.1 功能 197
6.5.2 基本API 197
6.5.3 实例:单击某一个按钮播放音乐 197
第7章 资源加载器、游戏界面的跳转以及
物理引擎 199
7.1 资源加载器—AssetManager类的介绍
与基本使用 199
7.1.1 功能 199
7.1.2 基本API 200
7.1.3 实例:游戏中的loading界面
第一部分 200
7.1.4 实例:游戏中的loading界面
第二部分 203
7.2 游戏界面的跳转 204
7.2.1 第一种方式—隐藏其中一个,
显示另外一个 204
7.2.2 第二种方式—setScreen() 206
7.3 libGDX中的物理引擎—Box2D
基础 209
7.3.1 基础类概览 209
7.3.2 基础类的详细介绍 210
7.3.3 实例:下降的小球与砖块 213
第8章 libGDX中的UI编辑器 216
8.1 让CocosStudio成为libGDX的UI
编辑器 216
8.2 CocosStudio的UI编辑器的基本
使用 217
8.2.1 新建项目 217
8.2.2 调整屏幕大小 218
8.2.3 导入资源 219
8.2.4 摆放素材 219
8.2.5 设置元素属性 220
8.2.6 修改元素的名字 221
8.2.7 保存项目 221
8.3 解析CocosStudio的UI文件 221
8.3.1 找到数据文件 221
8.3.2 简单分析数据文件 222
8.3.3 编写代码解析JSON文件 223
8.3.4 CocosStudio解析工具类的基本
用法 228
8.3.5 让CocosStudio UI编辑器的数据
在libGDX中完美运行 229
8.4 CocosStudio生成的JSON文件中的
隐患及解决方案 231
8.4.1 隐患分析 231
8.4.2 解决方案 231
第9章 小游戏实战—捡金币 232
9.1 游戏的感性认识 232
9.1.1 游戏运行效果图 232
9.1.2 组成分析 233
9.2 金币、背景的实现的原理分析 233
9.3 游戏成就的原理分析及游戏中的
碰撞检测 233
9.3.1 检测的简单介绍 234
9.3.2 游戏成就的原理分析 234
9.4 成功界面与失败界面的原理分析 234
9.5 剩余时间的原理分析 235
9.6 代码实现 235
9.6.1 金币(Jinbi) 逻辑体的实现 235
9.6.2 工具类(Utils)的实现 237
9.6.3 背景(BgImage)逻辑体的实现 237
9.6.4 游戏主逻辑体MyGame 239
9.6.5 Android与libGDX交互类
MainActivity的编写 244
第10章 休闲类游戏—2048 245
10.1 2048的由来及功能概述 245
10.1.1 2048的由来 245
10.1.2 功能简介 245
10.2 游戏的策划及准备工作 247
10.2.1 游戏的策划 247
10.2.2 Android平台下游戏的准备工作 247
10.3 游戏的架构 248
10.3.1 游戏中用到的主要技术 248
10.3.2 各类的简要介绍 248
10.3.3 游戏的框架简介 249
10.3.4 游戏中核心逻辑的几个要点 250
10.4 游戏程序入口的设计与实现 251
10.4.1 MainActivity的实现 251
10.4.2 MyGame类的实现 252
10.5 游戏主界面GameScreen的设计与
实现 253
10.5.1 游戏主界面的框架设计 253
10.5.2 游戏主界面GameScreen的
实现 257
10.6 游戏中所涉及的各个逻辑体 270
10.6.1 资源管理类Assets的设计 270
10.6.2 资源管理类Assets的实现 271
10.6.3 游戏中的常量类Contants 272
10.6.4 游戏中分数逻辑体Score类的
设计与实现 273
10.6.5 每种分值对应的颜色的逻辑体
Square的设计 274
10.6.6 Square类的实现 275
10.6.7 分数格子逻辑体Cell类的设计 279
10.6.8 分数格子逻辑体Cell类的实现 280
10.6.9 数据存储与恢复逻辑体Prefs
的设计 285
10.6.10 数据存储与恢复逻辑体Prefs
的实现 285
10.7 游戏的优化与改进 289
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证