新書推薦:
《
啊哈!原来如此(中译本修订版)
》
售價:HK$
63.8
《
部分识别入门——计量经济学的创新性方法
》
售價:HK$
75.9
《
东野圭吾:变身(来一场真正的烧脑 如果移植了别人的脑子,那是否还是我自己)
》
售價:HK$
64.9
《
推荐连接万物
》
售價:HK$
63.8
《
严复与福泽谕吉启蒙思想比较(王中江著作系列)
》
售價:HK$
165.0
《
甘于平凡的勇气
》
售價:HK$
49.5
《
存在与结构:精神分析的法国转向——以拉康与萨特为中心
》
售價:HK$
52.8
《
生成式人工智能:AIGC与多模态技术应用实践指南
》
售價:HK$
108.9
|
內容簡介: |
本书使用Cocos2d-x引擎(3.9版本)技术,带领读者从零开始逐步进行“拇指接龙”手游(手机游戏)的开发。此游戏基于Windows平台知名扑克牌游戏“空当接龙”开发而成,其中融入了世界闻名童话故事《拇指姑娘》一书的主要情节。读者可以通过学习这个游戏的开发过程,全面掌握Cocos2d-x C++游戏跨平台实战开发的主要方法和技巧。本书遵循理论和实践相结合的编写原则,并尽量按照软件工程指导思想,循序渐进地介绍“拇指接龙”游戏项目的开发过程。通过一款完整的跨平台(Android & iOS)实战型手游的开发学习,读者能够从中领悟Cocos2d-x引擎的神奇魅力,从而更加深入地理解和掌握该引擎。本书共分为3篇,17章。在第1篇中,我们简要介绍进行Cocos2d-x编程所必需的基础知识。在第2篇中,我们正式转入“拇指接龙”游戏的实战开发,在这一部分知识的编写中,我们尽量遵循软件工程开发思路展开介绍,适当穿插Cocos2d-x实战技巧的讲解。在第3篇中,我们转而关注基于Cocos2d-x实战手游跨平台开发、移植和第三方市场SDK嵌入乃至弱联网相关技术的探讨。通过这3篇内容的渐进性学习,力图使读者以最快的速度掌握基于Cocos2d-x引擎进行跨平台手游开发的关键技术。本书适合具有一定CC++开发经验的着眼于Cocos2d-x引擎的游戏开发初学者、游戏设计人员阅读,也适合作为高等院校和培训学校相关专业师生的教学参考用书。
|
關於作者: |
1992年毕业于山东师范大学计算机系,本科学历,毕业后一直工作于山东畜牧兽医职业学院,担任计算机基础课教学,后转至经贸系电子商务教研室担任《电子商务概论》、《电子商务数据库技术》及《网络营销》等专业课教学。业余时间,先后主持过《运动会管理系统》、《计算机一级考试系统》等软件开发,并撰写过《开发者突击:精通ASP.NET AJAX网络程序开发》(电子工业出版社,2008-07)和《ASP.NET3.5前沿技术与实战案例精粹》(中国铁道出版社,2010年06月01日)两部专业图书,同时在国内外诸多IT网站发表各类软件开发技术文章上百篇。近五年时间,出于业务需要和个人兴趣,集中钻研三大类手机(Android,iPhone和Windows Phone)开发服务器端及客户端相关技术。
|
目錄:
|
目录
基础篇
第章Cocos2d-x开发环境搭建
11选择Cocos2d-x 3x的理由
12C++ 11主要新特性
121nullptr
122auto
123lambda函数
124std::function类型
125C++11多线程std::thread
13Windows 7平台开发环境搭建
131Win32版本开发环境搭建
132安装Cocos Studio 233
133Android版本开发环境搭建
14Mac平台开发环境搭建
141安装Cocos2d-x 39开发环境与创建示例工程
142运行官方示例工程cpp-tests
143安装Mac版本的Cocos Studio
144Android开发环境搭建
15小结
第章Photoshop与Flash——独立手游开发者的必修课
21Photoshop CS 6鼠绘技巧与示例
22与手游UI制作密切相关的Photoshop技术
221GIF帧动画制作
222由GIF动画文件导出一组PNG图像文件
223GIF时间轴动画
23Flash CS 6鼠绘技巧与示例
24与手游UI制作密切相关的Flash技术
241生成Sprite表单
242尽量不把舞台元件实例集合导出到精灵表单
243导出库元件集到精灵表单时的注意事项
244Flash动画简介
245Flash+DragonBone联合制作heart_ani动画
25小结
第章手游辅助开发利器——TexturePacker和ParticleEditor
31图片切片工具TexturePacker
311为什么要用TexturePacker
312TexturePacker的基本用法
313Retina支持——AutoSD
314TextureSettings面板其他参数说明
315空当接龙游戏使用的碎图打包技术
316TexturePacker与XCode集成简介
32Windows平台免费开源的粒子编辑器ParticleEditor
321粒子系统属性讲解
322官方示例工程cpp-tests中粒子系统使用小结
323让粒子系统沿着指定轨迹运动
324SplashScreen场景粒子系统应用回顾
33小结
实践篇
第章拇指接龙手游整体策划与设计
41拇指接龙游戏创意构思及快照欣赏
411游戏构思
412传统拇指接龙游戏算法(玩法)回顾
413传统空当接龙游戏特点分析
414目前市场同类游戏简单分析
415旧瓶装新酿的可能性
416快照预览
42拇指接龙游戏整体数据策划与存储方案
421数据策划与总体算法分析
422数据存储方案分析
43模块及功能图设计
431系统总体模块及关系图
432游戏主场景MainScene流程图
44小结
第章Splash场景设计与多分辨率屏幕适配方案
51Splash UI设计
511设计场景图层文件
512设计场景中的动画文件
52后台代码分析
521SplashScene头文件定义
522SplashScene实现文件分析
53多分辨率适配方案
531单例类SmartRes头文件定义
532单例类SmartRes实现代码
54小结
第章拇指接龙游戏导航场景设计
61使用场景编辑器构建场景FirstScene
611用Cocos Studio 233创建帧动画
612用Cocos Studio 233创建骨骼动画
613Cocos Studio 233导出资源应用于编程
62游戏导航场景编码设计
621游戏导航场景功能分析
622游戏导航场景编码设计
63全局变量及SQLite开发技术分析
631系统中的全局变量
632两种本地文件存储方案——UserDefault和SQLite数据库
64小结
第章游戏帮助系统设计
71FaqScene场景设计
711FaqScene场景UI设计
712FaqScene场景编码分析
713多语言内容显示方案
72TutorialScene场景设计
721概述
722TutorialScene场景UI设计
723TutorialScene场景头文件设计
724TutorialScene场景动画设计
725TutorialScene场景的双击式移动扑克牌编程
726TutorialScene场景中拖放式移动扑克牌
727扑克牌自动飞动的硬编码方式
728无须扑克牌匹配判定与恢复栈创建
73小结
第章拇指接龙游戏关卡及回合设计
81大关卡设计的模拟愤怒的小鸟界面
811大关卡选择场景UI设计
812图层内置动画与ImageView_Title控件
813关于艺术数字控件TextAtlas
814大关卡选择编码的头文件设计
815大关卡选择编码的实现文件编程
82小关卡设计的模拟“RuneMasterPuzzle”界面
821小关卡选择场景UI设计
822小关卡选择设计的编码实现
83游戏回合选择设计
831UI设计
832后台编码
84小结
第章创建通用场景切换类
91LoadingSceneh定义
92LoadingScene成员函数分析
93小结
第章拇指接龙游戏道具商店设计
101了解游戏道具
1011道具定义
1012游戏道具获取方式
1013游戏道具数据库设计
102拇指接龙游戏道具数据策划
1021操作撤销道具——undo
1022列重洗牌道具——fan
1023列移动道具——worm
1024wildcard道具——wand
1025Joker道具——net
1026道具——owl
103模拟“进击的小怪物”设计道具商店
1031道具商店主界面设计
1032道具购买场景设计
1033诱导玩家安装应用赚积分场景设计
104游戏道具商店编码实现
1041由游戏导航场景切换到道具商店系统
1042道具商店系统StoreSceneh分析
1043道具数值定义
1044加载场景资源文件
1045触发道具购买行为编程
1046进行购买道具活动相关编程
1047积分墙相关编程
105小结
第章拇指接龙游戏主场景开发
111游戏主场景开发的功能设计
1111道具子系统
1112发牌子系统
1113玩牌子系统
1114奖励子系统
112游戏主场景开发的界面设计
1121游戏主场景界面设计
1122主场景工具栏(即游戏场景HUD)设计
1123奖励信息提示图层设计
1124道具使用说明图层设计
1125游戏暂停图层设计
1126游戏继续操作图层设计
1127游戏回合结束小结图层设计
113游戏主场景开发的数据结构设计
1131创建扑克牌类——Card
1132定义双击或拖放扑克牌的有关变量
1133定义用于存储扑克牌的数据结构
114游戏主场景开发的总体流程设计
115Undo道具开发与STL函数
1151Undo道具功能回顾
1152Undo道具有关数据结构与操作
1153使用与定义stackTidying函数
1154使用Undo道具编程
116Fan和Worm道具编程
1161Fan道具
1162Worm道具
117Wand、Net和Owl道具编程
1171Wand道具
1172Net道具
1173Owl道具
118奖励机制编程
1181拇指接龙游戏奖励子系统功能模块
1182奖励定义
1183奖励相关编程分析
1184奖励系统监控与执行
119扑克牌拖放与单击事件编程
1191onTouchBegan函数总体执行流程示意图
1192屏幕单击事件编程
1193onTouchMoved函数总体执行流程示意图
1194onTouchEnded函数总体执行流程示意图
1110游戏进程监控编程
11101游戏系统时间监控
11102奖品监控
11103游戏全程监控机制
11104缺憾
1111游戏暂停编程
11111功能模块图
11112暂停模块编程
1112双击式移动扑克牌编程
1113拖放单张扑克牌编程
1114拖放多张扑克牌编程
11141onTouchBegan函数主要功能总结
11142onTouchMoved函数主要功能总结
11143onTouchEnded函数内系列扑克牌执行流程示意图
1115小结
高级扩展篇
第章iOS移植的Objective-C编程知识必备
121必须了解的Objective-C 20编程知识
1211Objective-C语言特性的Block
1212委托和协议
1213Objective-C=编译器+运行时
122iOS应用程序文件夹架构
1221文件mainm的作用
1222UIApplicationMain函数
1223应用程序委托
1224视图控制器
1225Infoplist文件
1226图标和默认图像
1227沙盒机制
1228MVC编程规范
123iOS应用程序生命周期分析
1231应用程序的状态
1232各个程序运行状态时代理的回调
1233加载应用程序进入前台
1234加载应用程序进入后台
1235基于警告式响应中断
1236进入后台运行
1237返回前台运行
1238程序终止
1239The Main Run Loop主运行循环
124iOS应用程序MVC架构
1241MVC框架结构
1242深入理解UIViewController类
125Cocos2d-x框架下iOS版本的AppController
126Objective-C反射技术回顾
1261获取Class
1262确定继承关系
1263方法的动态调用
127C++与Objective-C混合编程
1271Objective-C和C++混编支持
1272结构成员与类成员
1273关于命名空间
1274关于C++模板
1275关于异常处理
128EasyNDK的iOS版深入剖析
1281实现原理图展示
1282EasyNDK-for-cocos2dx-master下载Demo应用全面剖析
1283总结EasyNDK的使用套路
129参考资料
第章Android移植的Java&NDK编程知识必备
131Android应用程序体系架构
132Android应用程序基本组件
1321Activity与View
1322Service与Activity
1323Intent类和IntentFilter类
1324Android应用程序生命周期
133了解Android应用UI设计
1331丰富的可视化控件
1332关联后台代码与前台UI
134Android事件处理机制
1341组件间消息传递——Intent
1342线程间消息传递——Message
135EasyNDK的Android版深
|
內容試閱:
|
前言
本书特色
第一,本书案例拇指接龙游戏源码基于目前Cocos2d-x引擎最新版本3.9及相应的最新UI编辑器Cocos Studio 2.3.3。与2.x版本相比,Cocos2d-x 3.x版本主要实现了三大优化:一是通过引入新一代渲染器,可创建渲染队列,从而简化渲染过程并更容易实现跨平台;二是经全新修改过的API将语言用法改为C程序员更习惯的使用方式,进一步提升源码的稳定性和可读性;三是大幅度提升、优化系统性能,充分利用自动裁剪、自动批处理技术。因此,尽快适应和掌握Cocos2d-x 3.x版本引擎,并熟练运用对应的UI编辑器Cocos Studio 2.3.3,既是每一位游戏程序员的内心渴求,也是形势所迫。
第二,本书给出的是一个相对完整的近乎于企业级的跨平台手游案例剖析,从游戏策划、美工设计到后台编码完全靠本人自己利用业余时间独立开发完成。因此,无论从编码风格一致性方面,还是从一名全栈式手游程序员发展角度来看,本书都值得一读。
创作技术背景
空当接龙游戏,本人十多年前就对Windows的这款自带单机版应用爱不释手,曾经尝试使用WiEngine引擎开发,并从数据结构和软件工程开发角度对该游戏做过多次更改。之后,该游戏于2014年使用Cocos2d-x 2.2.3和Cocos Studio 2.4.0.1二次开发,如今升级到当前最新的Cocos2d-x 3.9及Cocos Studio 2.3.3,并进一步修整(加入弱联网和跨iOS与Android双平台支持)。
另外,本人自五年前进入Android游戏开发领域,经过几番筛选,于2013年年末,定位于Cocos2d-x引擎。2015年上半年本人集中学习了网游服务器端开发技术,主要针对基于Python的Firefly和基于Node的Pomelo两款开源引擎,后来尝试使用LeanCloud云引擎技术简化弱联网游戏开发。
主要内容与编写思路
为便于阅读,本书共分为3篇:第1篇是基础篇(第1~3章),相对短小,是Cocos2d-x 3.9 Cocos Studio 2.3.3的基础内容,主要介绍引擎在Windows和Mac双平台的开发环境搭建,并给出各自的入门级实例(部署到Android和iPhone手机上);第2篇是实践篇(第4~11章),篇幅最长,从最初的游戏策划开始,并遵循软件工程开发指导理念,按顺序详细介绍整款拇指接龙游戏的实现过程;第3篇属于高级扩展篇(第12~17章),给出开发真正跨平台、弱联网功能的手游必须了解甚至要掌握的一些技术,如必备的Android平台Java开发基本功和iOS平台必需的Objective-C基本功,NDK开发基本功(全面剖析工具EasyNDK),作为独立手游戏开发者必需的Photoshop和Flash基本功,服务器端开发技术基本功,等等。
读者对象定位
尽管从横向来说,本书适合于所有具有一定CC开发经验的读者阅读,但读者如果具有一定的Android开发基础知识或基本Mac平台编程经验则更适合。归纳来看,本书适合于:
● 希望尽快通过Cocos2d-x开发出跨Android平台和iOS平台游戏的在校大学生;
● 希望全面学习Cocos2d-x跨平台游戏开发技术的程序员;
● 立志成为独立手游创业者的业余计算机软件开发爱好者;
● 对于跨平台嵌入式应用开发技术表现出浓厚兴趣的其他研究人员。
系统需求与源码
本书案例拇指接龙游戏几经修整和版本升级,先在Windows 7 Vmware虚拟机 Eclipse下调试好Win32版本、Android真机版本和iOS模拟器版本,后在Mac OS 10.11 Android Studio 1.4Cocos2d-x 3.9(结合Cocos Studio 2.3.3)环境下调试通过Android和iOS真机版本。
本书所有案例源码可从如下一些途径下载。
邮箱:thumbelina_2015@163.com,密码:134137138_ok。
另外,也可以通过本人电子邮件与我联系索取。
勘误及联系作者
尽管在编写本书的过程中,本人努力做到严谨无误,但限于个人水平以及时间的原因,书中难免有所遗漏或错误,真诚期望各位读者不吝指正。
读者可以通过本人的51CTO博客(http:zhuxianzhong.blog.51cto.com)或电子邮件(sdmyzxz@163.com)与我取得联系。
致谢
真诚感谢电子工业出版社张迪编辑以及所有编辑人员在本书的策划、撰写及校对的全程中所给予本人的耐心细致的指导及帮助。
感谢山东畜牧兽医职业学院经贸系主任高嗣慧参与了本书的成书指导,并参与了书中第1章和最后3章的编写。
最后要感谢的是我的所有亲人和朋友,是你们的鼓励与支持让我一步步坚持向前并逐步走向成熟与成功。
朱先忠sdmyzxz@163.com
|
|