fbpx

[email protected]

购物车

 查看订单

  • 我的帐户
东东购 | EasternEast
  • 中文书店
    • 畅销排行榜
      • 小说 畅销榜
      • 童书 畅销榜
      • 外语畅销榜
      • 管理畅销榜
      • 法律畅销榜
      • 青春文学畅销榜
    • 热门分类
      • 社会小说
      • 成功/励志 畅销榜
      • 人物传记
      • 大陆原创
      • 绘本童书
      • 影视小说
    • 文学推荐
      • 文集
      • 戏剧
      • 纪实文学
      • 名家作品
      • 民间文学
      • 中国现当代随笔
    • 新书热卖榜
      • 小说 新书热卖榜
      • 青春文学 新书热卖榜
      • 童书 新书热卖榜
      • 管理 新书热卖榜
      • 成功/励志 新书热卖榜
      • 艺术 新书热卖榜
  • 精选分类
    • 小说
    • 保健养生
    • 烹饪/美食
    • 风水/占卜
    • 青春文学
    • 童书
    • 管理
    • 成功/励志
    • 文学
    • 哲学/宗教
    • 传记
    • 投资理财
    • 亲子家教
    • 动漫/幽默
    • 法律 Legal
    • 经济 Economics
    • 所有分类
  • 关于东东
  • 帮我找书
搜索
首页计算机/网络程序设计Cocos2d-x之Lua核心编程(第2版)

Cocos2d-x之Lua核心编程(第2版)

业界技术专家卞安(@火云红孩儿)、李华明(@李华明Himi)、廖宇雷(@廖宇雷_cocoslua_cn)、岳阳(@做游戏的老G)、屈光辉(@子龙山人)联袂推荐!王哲林顺作序推荐!

作者:刘克男 出版社:清华大学出版社 出版时间:2017年08月 

ISBN: 9787302473145
年中特卖用“SALE15”折扣卷全场书籍85折!可与三本88折,六本78折的优惠叠加计算!全球包邮!
trust badge

EUR €22.99

类别: 程序设计 SKU:5d873cb25f98494bcc14dc24 库存: 有现货
  • 描述
  • 评论( 0 )

描述

开 本: 32开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302473145丛书名: 清华开发者书库

编辑推荐
作为使用Lua进行Cocos开发的专业图书,本书非常重要!它不但在Lua语言和引擎方面有详细的讲解,更在引擎的诸多细节上花费了大量心思,包括缓存、内存管理与监控、数据加密等,是不可多得的Cocos2d-x开发进阶*教材!——卞安(网名:红孩儿,国内*游戏开发技术专家)本书详尽地讲述了Cocos2d引擎的起源与发展,不仅让初学者深入了解到该引擎的来龙去脉,更对Cocos2d众多版本的选择上给予了重要的剖析与建议。 作者还通过由浅入深的教学方式来讲解项目实战开发的过程,介绍了许多实战经验,避免初学者在学习过程中走弯路。全书重点讲解Cocos2dx-Lua,其跨平台性和热更新机制已是当今游戏开发中的刚性需求!因此我极力建议学习Cocos2d引擎的读者把此书列为必读入门经典!—— 李华明(网名:Himi,国内*游戏开发技术专家,网易《功夫熊猫》游戏团队CTO)本书市面上*本由 Cocos 官方编写的 Cocos2d-x Lua 实战书籍。本书内容由浅及深,从 Cocos2d-x Lua 的基本概念、Lua 编程基础,到完整的游戏设计和实现都有详细论述。 除了基础知识和游戏开发实践,本书还包含了 Cocos2d-x Lua 在内存管理、性能优化、网络访问、UI 库等进阶内容。 由于本书由触控科技精通 Cocos2d-x Lua 的资深开发人员亲自编写,完全遵循 Cocos2d-x Lua 的*实践方法。所以不管是即将进入手游行业的 Cocos2d-x Lua 的初学者,还是经验丰富的开发者,本书都是极佳的学习资料和参考手册。—— 廖宇雷(Cocos2d-lua引擎作者)*近几年有幸目睹了Cocos2d-x逐渐发展壮大,并成为了中国开源项目的骄傲。C 虽然是游戏开发的主流技术,但对于初学游戏开发的人来说过于复杂且不易上手。Lua是国内脚本开发技术的主流,自Cocos2d-x提供Lua-binding脚本技术以来,有效地降低了学习难度,极大地提高了开发效率,对Cocos2d-x技术的推广普及起到了不可估量的作用。杨雍团队多年以来一直从事Cocos2d-x的研究和推广工作,经验极为丰富。随着这本书的交付出版,Cocos2d-x技术和Cocos2d-x社区必将有一个更加光明的未来……——岳阳(网名:老G,资深Cocos技术爱好者)一年前,泰然网教主杨雍跟我说要出一本*好的 Cocos2d-x 入门图书。今天,他真做到了。本书是泰然网的诚意之作,它以 Cocos2d-Lua 为背景,从 Lua 语言基础到 Cocos2d-x 核心知识点,由浅入深,全面论述。 *后本书以一个完整的游戏实例收尾,帮助读者快速动手实践。——屈光辉 (泰然网ID:子龙山人,国内*游戏开发技术专家,现任职于Cocos引擎团队) 
内容简介
本书在《Cocos2dx 之Lua 核心编程》(第1版)的基础上进行了内容扩充,增加了Spine骨骼动画、拆剪节点、渲染纹理、Lua Binding实战、OpenGL ES 2.0与shader编程和SDK接入等内容,全面而又系统地论述了Cocos2dx Lua游戏开发的核心技术。本书从 Lua 语言基础开始,全面介绍Cocos2dx Lua 的基础知识、进阶应用和高级编程技术,并以一款三消游戏开发实战贯穿全书。第1~3章为基础知识,是使用Cocos2dx Lua开发游戏的必备知识集合; 第4章和第6章以实际作品“Fruit Fest”展示了完整的游戏开发流程; 第5章为游戏开发进阶知识,其中介绍的功能是绝大多数游戏都需要的,熟知这些知识可以在开发游戏功能模块的时候更加得心应手; 第7~8章为高级编程技术,为游戏产品发布阶段提供有力支撑。全书采用理论结合实践的*编程学习方式,各个章节都提供了相应的实例。
本书适合Cocos2dx Lua游戏开发初学者,亦可作为经验丰富的Cocos2dx Lua游戏前端开发工程师的参考读物。
作者简介
刘克男 (@刘克男_u0u0):毕业于电子科技大学计算机科学与技术专业。2006年起在电子科技大学嵌入式国家实验室从事跨平台应用引擎研究。在跨平台引擎项目中担任引擎1.x开发部负责人,拥有4年技术团队管理经验。C/C 功底深厚,跨平台经验丰富,先后开发过的平台有Windows Mobile、Brew、iOS、Android、Window Phone 8。2013年加入触控,负责Cocos2d-x引擎的推广。编写了大量优质教程,涉及OpenGL ES、Chipmunk、Cocos2d-x等技术。2015年调任触控教育创新中心教学总监,负责Cocos2d-x课程设计与实施,同年被四川大学聘为校外创新与创业指导教师。
目  录

 

目录

第1章Cocos2dLua

 

1.1概述

 

1.1.1Cocos2d的起源

 

1.1.2Cocos2dx的诞生

 

1.1.3Cocos2dLua的发展

 

1.2版本介绍

 

1.2.1Cocos2dx版本介绍(C )

 

1.2.2Cocos2dLua版本介绍

 

第2章Lua编程

 

2.1Lua在Windows下的运行环境搭建

 

2.1.1安装

 

2.1.2运行

 

2.2Lua基础

 

2.2.1Lua介绍

 

2.2.2Lua语法

 

2.3Lua进阶

 

2.3.1Metatable(元表)

 

2.3.2重要元方法介绍

 

2.3.3封装

 

2.3.4继承

 

2.3.5多态

 

第3章Cocos2dLua基础

 

3.1Cocos2dLua开发环境配置

 

3.1.1安装Cocos2dLua

 

3.1.2安装Sublime与QuickXDev

 

3.1.3测试开发环境

 

3.2引擎架构与目录结构

 

3.2.1引擎架构

 

3.2.2引擎文件结构

 

3.2.3项目文件结构

 

3.3MVC框架

 

3.3.1什么是MVC

 

3.3.2Cocos2dLua中的类实现

 

3.3.3Cocos2dLua的MVC实现

 

3.4基础概念

 

3.4.1导演

 

3.4.2节点

 

3.4.3场景

 

3.4.4层

 

3.4.5精灵

 

3.5坐标系

 

3.5.1笛卡儿坐标系

 

3.5.2屏幕坐标系和Cocos2dLua坐标系

 

3.5.3世界坐标系VS本地坐标系

 

3.5.4锚点

 

3.5.5忽略锚点

 

3.5.6ZOrder与渲染顺序

 

3.6文本标签

 

3.6.1TTF文本标签

 

3.6.2BMFont文本标签

 

3.6.3UILabel控件

 

3.6.4Mac下使用GlyphDesigner制作字体

 

3.6.5Windows下使用BMFont制作字体

 

3.7按钮

 

3.7.1UIButton按钮

 

3.7.2UIPushButton按钮

 

3.7.3UICheckBoxButton按钮

 

3.7.4UICheckBoxButtonGroup按钮

 

3.8场景转换

 

3.8.1概念

 

3.8.2带转场特效的场景

 

3.8.3场景转换示例

 

3.9动作

 

3.9.1瞬时动作

 

3.9.2有限时间动作

 

3.9.3复合动作

 

3.9.4变速动作

 

3.9.5节点与动作相关的接口

 

3.10序列帧动画

 

3.10.1精灵表单

 

3.10.2播放序列帧动画

 

3.10.3动画缓存

 

3.11调度器

 

3.11.1全局调度器

 

3.11.2节点调度器

 

3.12事件分发机制

 

3.12.1节点事件

 

3.12.2帧事件

 

3.12.3键盘事件

 

3.12.4加速计事件

 

3.12.5触摸事件

 

3.13多分辨率适配

 

3.13.1Cocos2dx中的多分辨率适配

 

3.13.2Cocos2dLua中的多分辨率适配

 

第4章消除游戏实战(一)

 

4.1Fruit Fest(1): 主场景

 

4.1.1游戏玩法

 

4.1.2美术设计

 

4.1.3分辨率适配策略

 

4.1.4主场景

 

4.2Fruit Fest(2): 创建PlayScene

 

4.2.1准备BMFont

 

4.2.2创建PlayScene

 

4.2.3添加转场代码

 

4.2.4添加UI

 

4.3Fruit Fest(3): 初始化水果矩阵

 

4.3.1水果类

 

4.3.2矩阵算法

 

4.3.3掉落算法

 

4.3.4矩阵初始化的代码实现

 

4.4Fruit Fest(4): 选中水果

 

4.4.1绑定触摸事件

 

4.4.2清除已高亮区域

 

4.4.3高亮算法

 

4.4.4分数算法

 

4.5Fruit Fest(5): 消除与掉落

 

4.5.1消除高亮水果

 

4.5.2掉落与补全

 

第5章Cocos2dLua进阶

 

5.1UI控件

 

5.1.1输入控件

 

5.1.2进度条控件

 

5.1.3滑动条控件

 

5.1.4滚动视图控件

 

5.1.5列表视图控件

 

5.1.6分页视图控件

 

5.2瓦片地图

 

5.2.1用Tiled制作瓦片地图

 

5.2.2地图视角

 

5.2.3在Cocos2dLua中使用TMX

 

5.3精灵批处理

 

5.3.1手动批处理

 

5.3.2自动批处理

 

5.3.3手动批处理VS自动批处理

 

5.4碰撞检测

 

5.4.1点与点的碰撞

 

5.4.2点与矩形的碰撞

 

5.4.3圆与圆之间的碰撞

 

5.4.4轴对齐矩形之间的碰撞

 

5.4.5非轴对齐矩形之间的碰撞

 

5.5内存管理

 

5.5.1Lua内存管理

 

5.5.2Cocos2dLua内存管理

 

5.5.3纹理缓存

 

5.5.4精灵帧缓存

 

5.6数据与存储

 

5.6.1JSON数据

 

5.6.2crypto数据编码

 

5.6.3UserDefault数据存储

 

5.6.4GameState数据存储

 

5.6.5文件读写

 

5.7背景音乐与音效

 

5.8粒子系统

 

5.8.1什么是粒子系统

 

5.8.2Cocos2dLua中的粒子系统

 

5.8.3粒子系统批处理节点

 

5.8.4粒子属性

 

5.8.5粒子编辑器介绍

 

5.8.6使用粒子系统

 

5.9Spine骨骼动画

 

5.9.1Spine运行库

 

5.9.2用法示例

 

5.10裁剪节点

 

5.11渲染纹理

 

第6章消除游戏实战(二)

 

6.1Fruit Fest(6): 过关与信息存储

 

6.1.1添加进度条

 

6.1.2过关与数据持久化

 

6.2Fruit Fest(7): 爆炸特效与声音

 

6.2.1爆炸特效

 

6.2.2游戏音乐

 

6.2.3后记

 

第7章Cocos2dLua高级

 

7.1网络通信

 

7.1.1network

 

7.1.2SocketTCP

 

7.1.3WebSocket

 

7.2物理引擎

 

7.2.1创建带物理世界的场景

 

7.2.2创建物理边界

 

7.2.3创建受重力作用的精灵

 

7.2.4碰撞检测

 

7.2.5完整示例

 

7.3摄像机

 

7.3.1OpenGL视口

 

7.3.2cc.Camera

 

7.3.3场景的默认摄像机

 

7.3.4自定义摄像机

 

7.4自定义事件

 

7.4.1加载EventProtocol组件

 

7.4.2主要接口

 

7.4.3完整示例

 

7.5有限状态机

 

7.5.1基本用法

 

7.5.2完整示例

 

7.6扩展Lua接口

 

7.6.1Lua C API

 

7.6.2Lua栈

 

7.6.3Lua Binding实战(1): tolua 手动绑定

 

7.6.4Lua Binding实战(2): 扩展Spine接口

 

7.7OpenGL ES 2.0与shader编程

 

7.7.1OpenGL ES概述

 

7.7.2OpenGL ES绘制几何图形

 

7.7.3矩阵变换

 

7.7.4纹理贴图

 

7.7.5Cocos2dLua中使用自定义shader

 

第8章打包与发布

 

8.1Android项目的编译与打包

 

8.1.1安装JDK

 

8.1.2Build Native

 

8.1.3Android Studio打包

 

8.2Mac下编译iOS版本

 

8.2.1先决条件

 

8.2.2Debug真机调试

 

8.2.3Release打包

 

8.3发布时加密Lua源文件

 

8.3.1compile_scripts脚本

 

8.3.2去掉源代码引用

 

8.3.3修改Lua启动入口

 

8.4发布时加密图片资源文件

 

8.4.1encrypt_res脚本

 

8.4.2资源加密示例

 

8.5SDK接入

 

8.5.1使用luaj接入Android SDK

 

8.5.2使用luaoc接入iOS SDK

 

前  言

前言

本书分8章,知识由浅入深、步步推进,建议按照顺序阅读。第1章介绍Cocos2dLua背景,Cocos2d各版本之间的关系。第2章旨在引导读者快速入门,已有Lua编程基础的读者,可跳过这一部分。第3章介绍Cocos2dLua基础,本章是开发游戏必须掌握的知识结构。第4章介绍Fruit Fest消除游戏的部分,实现了游戏的核心玩法。本章应用Cocos2dLua基础知识,展示了游戏开发的主要流程。第5章介绍Cocos2dLua进阶,涵盖UI控件、瓦片地图、内存管理以及数据存储等内容。第6章介绍Fruit Fest游戏的第二部分,为游戏添加了音乐与粒子特效。第7章介绍Cocos2dLua高级内容,虽然其中的网络通信和物理引擎不是每个游戏都会用到,但它们是引擎必不可少的一部分。自定义事件和状态机为游戏系统架构提供基础支撑,而Lua Binding要求熟练掌握C语言开发,它们都是为高级工程师准备的。第8章介绍打包与发布。之所以把该部分放在后,是因为Cocos2dLua提供的Player模拟器已足够应对游戏的前期开发,通过Player测试游戏将为开发者节省大量时间。适用版本本书基于QuickCocos2dxCommunity 3.6.4版本撰写,由于Quick框架对接口稳定性所做的贡献,本书与引擎功能模块相关的章节适用于Cocos2dLua v3.3 Final之后的所有版本。可以在http://cocos2dlua.org/download/index.md下载到的Cocos2dLua引擎。

注:  本书不适用于Cocos2dLua 2.x分支版本。

书中实例本书以理论结合实践,各章均配备了测试用例。其中第4章和第6章以Fruit Fest展示了完整游戏的开发流程,每一节各介绍一个独立的功能并配备实例代码,让初学者充分体验到游戏开发的细节。读者可以从本书的主页(http://cocos2dlua.org/book/index.md)免费获取所有章节配套的实例代码。读者对象本书作为Cocos2dLua的权威书籍,从Lua语言基础开始,全面覆盖Cocos2dLua基础、进阶和高级编程,并指导读者逐步完成一款消除游戏的开发。对于Cocos2d新手而言,本书可以作为手机游戏开发的入门书籍。对于有经验的手游开发者而言,本书依然是进行Cocos2dLua开发必不可少的参考手册,大量的实例代码可以帮助读者节省宝贵的时间。对于院校师生而言,本书的编排完全按照学习顺序系统展开,是教材的不二之选。由于笔者水平有限,书中内容难免会有不妥或者疏漏,欢迎读者批评指正。作者2017年5月

媒体评论
评论
在线试读
第5章
Cocos2dLua进阶

5.1UI控件在Cocos2dLua基础章节,我们已经接触了两个基础的UI控件: 文本标签和按钮。它们是编写游戏所需的基础的控件,提前介绍能帮助我们进行第4章的游戏实战。经过游戏实战的练习,相信读者已经对游戏开发有了直观的认识体验,但是可能依然无法完成某些界面布局,因此现在本书将介绍Cocos2dLua提供的其他控件。5.1.1输入控件游戏中,有时需要让玩家输入用户名、密码或聊天消息等,这时需要输入控件来完成这些功能。输入控件内部调用手机系统提供的输入法接口,获取系统输入控件返回值,再传递给游戏引擎中对应的界面。Cocos2dLua封装的输入控件类是UIInput,源码位于quick/framework/cc/ui/UIInput.lua。控件显示效果如图51所示。

图51UIInput

1. 创建输入控件通过cc.ui.UIInput.new(options)新建一个输入控件。其中参数options是table类型,可选值如下: (1) image:输入框的图像,可以是图像名或是display.newScale9Sprite()创建的Sprite9Scale对象。(2) imagePressed:输入状态时输入框显示的图像(可选)。(3) imageDisabled:禁止状态时输入框显示的图像(可选)。(4) listener:回调函数,监听输入事件(可选)。(5) size:输入框的尺寸,用cc.size(宽度,高度)创建。(6) x,y:坐标(可选)。我们来看看如何简单地创建一个输入控件,在MainScene的ctor中加入下面代码: 
local editbox = cc.ui.UIInput.new({
image =”editbox.png”,– 输入控件的背景
x =200,
y =300,
size = cc.size(200,40)
})
self:addChild(editbox)
2. 获取文本可以使用getText()方法获取输入控件的文本内容。
local text = editbox:getText()
3. 设置提示信息可以设置输入字段预期值的提示信息,该提示会在输入字段为空时显示,并会在字段获得焦点时消失。假如输入框期望输入的是密码,设置代码如下: 
editbox:setPlaceHolder(“请输入密码”)
4. 设置显示文本也可以给输入控件设置默认值。例如想让玩家给游戏角色起名称,在输入框中可以预留一个默认名字,用户可以偷懒不输入新名字,直接单击“确认”开始游戏。
editbox:setText(“路人甲”)
5. 监听输入事件在新建输入控件的时候,可以通过参数传递一个输入事件监听器给该控件,监听系统输入法在整个输入过程中的状态变化情况。示例代码如下: 
localfunction onEdit(event, editbox)
if event ==”began”then
— 开始输入
print(“开始输入”)
elseif event ==”changed”then
— 输入框内容发生变化
print(“输入框内容发生变化”)
local text = editbox:getText()
print(text)
elseif event ==”ended”then
— 输入结束
print(“输入结束”)
elseif event ==”return”then
–从输入框返回
print(“从输入框返回”)
end
end

书摘插画
插图

插图

插图

插图

插图

插图

插图

插图

抢先评论了 “Cocos2d-x之Lua核心编程(第2版)” 取消回复

评论

还没有评论。

相关产品

阅读更多
缺货

Python编程 从入门到实践

EUR €37.99
评分 5.00 / 5
阅读更多
缺货

算法(第4版)【Sedgewick之巨著,与高德纳TAOCP一脉相承】

EUR €58.99
评分 5.00 / 5
加入购物车

21世纪C语言(影印版)

EUR €37.99
加入购物车

PHP编程 第三版(影印版)

EUR €42.99

东东购的宗旨是服务喜爱阅读中文书籍的海外人民,提供一个完善的购书平台,让国人不论何时何地都能沉浸在书香之中,读着熟悉的中文字,回忆着家乡的味道。


安全加密结账 安心网络购物 支持Paypal付款

常见问题

  • 货物配送
  • 退换货政策
  • 隐私政策
  • 联盟营销

客户服务

  • 联系东东
  • 关于东东
  • 帮我找书
  • 货物追踪
  • 会员登入

订阅最新的优惠讯息和书籍资讯

选择币别

EUR
USD
CAD
AUD
NZD
NOK
GBP
CHF
SEK
CNY
UAH
ILS
SAR
MXN
KRW
MYR
SGD
HUF
TRY
JPY
HKD
TWD
facebookinstagram
©2020 东东购 EasternEast.com

限时特卖:用“SALE15”优惠券全场书籍85折!可与三本88折,六本78折的优惠叠加计算。 忽略