Cocos2d-JS游戏开发快速入门到实战(移动互联网开发技术丛书)

Cocos2d-JS游戏开发快速入门到实战(移动互联网开发技术丛书) pdf epub mobi txt 电子书 下载 2025

何金成 著
图书标签:
  • Cocos2d-JS
  • 游戏开发
  • JavaScript
  • HTML5游戏
  • 移动游戏
  • 游戏编程
  • 快速入门
  • 实战
  • 移动互联网
  • 开发技术
想要找书就要到 图书大百科
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
出版社: 清华大学出版社
ISBN:9787302492405
版次:1
商品编码:12317003
包装:平装
开本:16开
出版时间:2018-02-01
用纸:胶版纸
页数:293
字数:457000
正文语种:中文

具体描述

内容简介

本书从游戏的基础知识介绍、Cocos引擎介绍、Cocos2d�睯S的环境搭建、Cocos核心概念、Cocos引擎节点、Cocos资源处理、Chipmunk物理引擎、Cocos网络编程等方面对Cocos2d�睯S进行了全面解析,所有章节的所有技术点均有示例,且所有示例均有配套的源码可供参考。除此之外,本书还提供聊天室、贪吃蛇、2048以及飞机大战4个项目的实战,对项目进行了全面的讲解和源码剖析。
本书有较强的实用性,可帮助想要入门游戏前端开发技术的同学快速理解并掌握Cocos2d�睯S前端技术,并能使用该技术进行项目开发。

目录

目录
基础篇

第1章欢迎来到游戏世界

1.1游戏的前世今生

1.2游戏的玩法与分类

1.2.1MMORPG类游戏

1.2.2FPS类游戏

1.2.3ARPG类游戏

1.2.4卡牌类游戏

1.2.5RTS类游戏

1.2.6消除类游戏

1.2.7MOBA类游戏

1.2.8塔防类游戏

1.2.9跑酷类游戏

1.2.10数字类游戏

1.3游戏团队的职责与分工

1.4游戏的从无到有

1.5小结

第2章奇妙的Cocos2d�睯S之旅

2.1Cocos的前世今生

2.2Cocos2d引擎家族

2.3Cocos2d�睯S的介绍

2.3.1官方定义

2.3.2引擎架构

2.3.3引擎目录

2.4开发环境的搭建

2.4.1安装Python

2.4.2Cocos Console

2.4.3安装WebStorm

2.4.4配置Android环境

2.4.5Cocos Creator的安装

2.5Hello Cocos2d�睯S

2.5.1创建工程

2.5.2项目目录

2.5.3调试运行

2.5.4各平台打包及部署

2.6官方Demo

2.7小结

进阶篇


第3章Cocos核心概念

3.1导演、场景、精灵和图层

3.2实现菜单

3.2.1实现文字菜单

3.2.2实现精灵菜单

3.2.3实现开关菜单

3.3自定义场景

3.3.1创建场景脚本文件

3.3.2添加图层到场景

3.3.3添加精灵到图层

3.3.4修改main.js入口场景

3.3.5添加JS文件到project.json

3.4多场景切换

3.4.1导演的作用

3.4.2Director的常用方法

3.4.3场景切换Demo

3.5场景切换特效

3.6小结

第4章Cocos引擎节点

4.1锚点和坐标

4.2父子关系

4.3缩放和旋转

4.4计划任务

4.5电子时钟的实现

4.5.1功能分析


4.5.2底层格子的绘制和时间的定时刷新

4.5.3绘制数字

4.5.4绘制数字底色

4.6动作与组合动作

4.7生命周期

4.8事件处理

4.8.1创建单点事件监听处理

4.8.2创建事件监听的快捷方式

4.8.3键盘响应事件

4.8.4加速计事件

4.8.5鼠标响应事件

4.8.6自定义事件

4.8.7事件监听器的其他操作

4.9打地鼠

4.9.1玩法分析

4.9.2结构设计

4.9.3代码实现

4.10绘制节点

4.10.1绘图API

4.10.2绘制复杂图形

4.11小结

第5章Cocos资源处理

5.1纹理缓存

5.2图片的异步加载

5.3帧动画处理

5.4切图帧动画

5.5纹理打包文件的加载

5.5.1打包纹理文件

5.5.2加载打包文件

5.6粒子动画

5.6.1系统粒子动画

5.6.2自定义粒子动画

5.6.3使用粒子动画

5.7音乐和音效

5.8小结

第6章Chipmunk物理引擎

6.1基本概念

6.2引入Chipmunk引擎

6.3创建物理世界

6.3.1创建Space空间

6.3.2设置debug模式

6.3.3设置重力

6.3.4划分空间边界

6.4创建物理对象

6.4.1创建刚体

6.4.2设置body属性

6.4.3创建并绑定形状

6.4.4创建物理精灵对象

6.5物理世界的刷新

6.6碰撞检测

6.7运行物理世界

6.8小结

第7章Cocos网络编程

7.1网络通信协议

7.1.1TCP协议

7.1.2UDP协议

7.1.3TCP与UDP的比较

7.2NodeJS服务器环境的搭建

7.2.1NodeJS简介

7.2.2安装NodeJS

7.2.3Express框架

7.3HTTP通信

7.3.1HTTP协议位置

7.3.2请求响应模型

7.3.3HTTP客户端

7.3.4HTTP服务端

7.4WebSocket通信

7.4.1WebSocket出现之前的实时通信方式

7.4.2WebSocket原理

7.4.3WebSocket客户端

7.4.4WebSocket服务端

7.5小结


实战篇

第8章聊天室

8.1功能模块

8.2时序图

8.3功能设计

8.4客户端

8.4.1分层架构

8.4.2类图设计

8.4.3登录场景的实现

8.4.4聊天场景的实现

8.4.5网络处理的实现

8.4.6相关工具类

8.5服务端

8.5.1分层架构

8.5.2类图设计

8.5.3网络处理

8.5.4逻辑处理

8.5.5内存管理

8.6前后端通信

8.7小结

第9章贪吃蛇

9.1游戏玩法

9.2游戏分析

9.2.1身体关节

9.2.2移动方向

9.3游戏开发

9.3.1项目构建

9.3.2开始/结束场景

9.3.3游戏场景

9.3.4关节节点

9.3.5相关工具类

9.4运行效果

9.5小结

第10章2048

10.1游戏玩法

10.2游戏分析

10.3游戏开发

10.3.1项目构建

10.3.2开始/结束场景

10.3.3游戏场景

10.3.4滑动方块

10.3.5相关工具类

10.4运行效果

10.5小结

第11章飞机大战

11.1游戏玩法

11.2游戏分析

11.3游戏开发

11.3.1项目构建

11.3.2场景与状态机

11.3.3游戏场景

11.3.4游戏背景

11.3.5子弹类

11.3.6玩家类

11.3.7敌机类

11.3.8道具类

11.3.9加载动画

11.3.10全局管理

11.4运行效果

11.5小结


精彩书摘

第3章Cocos核心概念
经过前面的介绍,相信大家已经迫不及待地想要看看Cocos究竟有多大的本事。从本章开始逐步了解Cocos的核心概念,了解Cocos的世界到底是如何运转的。
本章内容:
■导演、场景、精灵和图层
■实现菜单
■自定义场景
■多场景切换
■场景切换特效

3.1导演、场景、精灵和图层
在Cocos的设计理念中,一款游戏就如同一部电影,在电影中有导演、场景、演员和布景,整个电影如何演、怎么演,演员在什么场景做什么事,都是由导演来控制,而在具体的场景、具体的布景中,演员淋漓尽致地表演,他们相互协作、相互依赖,最终形成了电影。
相似地,在Cocos的设计中也有类似的角色,它们分别是Director(导演)、Scene(场景)、Sprite(精灵)和Layer(图层)。它们在Cocos引擎中有着不同的责任,导演负责控制所有场景之间的转换与切换,场景控制所有层和精灵的展示,精灵负责所有的动作表现,图层则负责场景的构成及用户交互。它们之间相互依赖的关系如图3��1所示。


图3��1导演、场景、精灵和图层的关系


读者可以通过把游戏和电影中的内容对应来加深理解。一般来说,在一场电影中只会有一个导演,在一个Cocos游戏中也只会有一个导演类; 一场电影会有多个镜头,对应Cocos中就是多个场景,而同一时刻只会同时运行一个场景,就像电影中不可能同时出现多个镜头; 电影场景中的房屋、天空、大地对应Cocos游戏中的图层,而房屋中的桌椅板凳、天空中的云、地面上的人对应Cocos中的精灵。以上各种元素构成了一整部电影,通过电影的这么一个过程,读者比较能够容易理解Cocos的机制原理。
这里以第2章创建的HelloWorld工程的默认JS文件app.js为例来了解导演、场景、精灵和图层。读者可以跟随代码一步一步进入Cocos2d�睯S的世界。
首先看游戏的入口文件main.js,Web启动会通过index.html加载CCBoot.js,然后加载入口文件main.js,而Native启动会通过原生代码加载jsb_boot.js,然后调用main.js,无论是Web还是Native启动,最终都会以main.js为入口进入到游戏,下面来看一看main.js里都做了什么。



cc.game.onStart=function(){

if(!cc.sys.isNative && document.getElementById("cocosLoading"))

//If referenced loading.js, please remove it

document.body.removeChild(document.getElementById("cocosLoading"));



//传true值让retina显示可用,在Android设备上默认为不可用以提高性能

cc.view.enableRetina(cc.sys.os===cc.sys.OS_IOS ? true : false);



//调整视图属性

cc.view.adjustViewPort(true);



//取消下面代码的注释来为你的游戏设置固定的朝向

cc.view.setOrientation(cc.ORIENTATION_PORTRAIT);



//设置分辨率的策略和大小

cc.view.setDesignResolutionSize(960, 640, cc.ResolutionPolicy.SHOW_ALL);

前言/序言


前言
随着移动端设备的普及,手游行业异常火爆,而随着HTML5技术的兴起,Cocos2d�瞲游戏引擎中的分支Cocos2d�睯S也越来越受欢迎,越来越多的有志人士加入到手游行业中来,本书可帮助想入门Cocos2d�睯S游戏前端开发的游戏行业人员或非游戏行业人员快速掌握并能上手开发Cocos2d�睯S游戏前端程序。
本书从游戏的基础知识介绍、Cocos引擎介绍、Cocos2d�睯S的环境搭建、Cocos核心概念、Cocos引擎节点、Cocos资源处理、Chipmunk物理引擎、Cocos网络编程等方面对Cocos2d�睯S进行了全面解析,所有章节的所有技术点均有示例,且所有示例均有配套的源码可供参考。除此之外,本书还提供聊天室、贪吃蛇、2048以及飞机大战4个项目的实战,对项目进行了全面的讲解和源码剖析。

本书内容由浅入深,从Cocos2d�睯S的基础知识介绍到最后的项目实战,逐步使读者深入理解Cocos的游戏开发原理。因为Cocos2d�睯S基于JavaScript语言开发,所以除了需要读者有一定的JavaScript语言基础之外无任何其他要求,任何对于Cocos2d�睯S技术感兴趣的开发者均可阅读此书。

编者
2018年1月









《移动互联网开发技术丛书》系列简介:解锁下一代移动应用开发的前沿技术 随着移动互联网的爆炸式增长,跨平台开发的需求日益迫切。开发者们不仅需要构建功能强大、用户体验出色的应用,更需要一种能够高效触达海量用户的解决方案。本丛书系列正是应运而生,汇聚了移动互联网开发领域最前沿、最具潜力的技术栈,旨在为广大开发者提供一条从入门到精通的系统化学习路径,助力您在日新月异的移动开发浪潮中抢占先机。 系列宗旨: 本丛书系列秉承“理论与实践并重,前沿与经典结合”的宗旨,致力于为读者提供: 系统化的知识体系: 涵盖移动互联网开发的核心概念、主流技术、高级技巧以及工程实践,构建扎实的理论基础。 丰富的实战案例: 选取行业内真实、具有代表性的项目案例,带领读者一步步完成从需求分析到产品落地的全过程,将理论知识转化为解决实际问题的能力。 前沿技术的探索: 关注移动互联网技术发展的最新动态,及时引入和深入剖析新兴技术,帮助读者把握技术趋势,保持竞争力。 高效的学习体验: 采用由浅入深、循序渐进的编写方式,辅以清晰的代码示例、详尽的图解和实用的开发技巧,确保读者能够轻松理解并有效吸收。 全方位的技术指导: 不仅仅是技术层面的讲解,更深入到项目管理、性能优化、安全防护、商业化运营等多个维度,帮助读者构建完整的移动互联网产品开发思维。 系列内容概览: 《移动互联网开发技术丛书》系列涵盖了当前移动互联网开发中最重要的几个技术方向,包括但不限于: 第一部分:跨平台开发利器——构建统一的用户体验 在移动互联网时代,用户遍布 iOS 和 Android 两大平台。为了最大限度地触达用户并降低开发成本,跨平台开发成为了必然选择。本系列中的部分书籍将深入探讨当前最受欢迎的跨平台开发框架,帮助开发者们用一套代码构建出在不同平台上都能运行的、体验一致的应用。 深入剖析主流跨平台框架: 您将了解到 React Native、Flutter 等框架的核心设计理念、架构原理以及它们在性能、UI 渲染、原生模块交互等方面的优势与劣势。 组件化与模块化开发: 学习如何通过组件化和模块化的方式组织代码,提高代码的可复用性和可维护性,加速开发进程。 与原生平台的集成: 掌握如何调用原生 API、开发原生模块,解决跨平台框架无法直接满足的需求,实现高性能的调用。 UI/UX 设计的最佳实践: 学习如何根据不同平台的特性,设计出既统一又符合用户习惯的 UI/UX,提供卓越的用户体验。 性能优化与调试技巧: 深入学习如何针对跨平台应用进行性能分析、瓶颈定位和优化,确保应用流畅运行。 第二部分:高性能原生应用开发——精雕细琢的极致体验 虽然跨平台开发日益普及,但在对性能、响应速度和系统级功能有极致要求的场景下,原生应用开发仍然是不可替代的选择。本系列将为 iOS 和 Android 原生开发提供详尽的指导,帮助开发者们打造出性能卓越、功能强大的原生应用。 iOS 原生开发(Swift/Objective-C): Swift 语言深度解析: 从基础语法到高级特性,全面掌握 Swift 的强大之处,学习如何编写安全、高效、富有表现力的代码。 Cocoa Touch 框架精讲: 深入理解 UIKit、Foundation 等核心框架,掌握视图控制器、数据管理、网络通信、多线程等关键技术。 SwiftUI 与 UIKit 融合: 学习如何在现代 UI 框架 SwiftUI 和传统的 UIKit 之间进行选择和集成,拥抱声明式 UI 的未来。 性能优化与内存管理: 掌握 Instruments 等工具的使用,进行性能剖析,学习 ARC 机制,优化内存使用,确保应用稳定流畅。 App Store 发布与分发: 了解 App Store Connect 的使用,学习证书配置、打包、提交审核等流程。 Android 原生开发(Kotlin/Java): Kotlin 语言优势与实践: 学习 Kotlin 相较于 Java 的诸多优势,如空安全、协程、扩展函数等,并将其应用于实际开发。 Android SDK 全面解析: 深入理解 Activity、Fragment、Service、BroadcastReceiver 等四大组件,掌握布局绘制、事件处理、资源管理、数据存储等核心知识。 Jetpack 架构组件: 学习 ViewModel, LiveData, Room, Navigation 等 Jetpack 组件,构建更易于维护、测试和扩展的应用架构。 Jetpack Compose 现代 UI 开发: 掌握 Jetpack Compose 声明式 UI 的开发范式,构建响应式、高效且美观的用户界面。 性能调优与应用安全: 学习 ART 虚拟机、内存优化、CPU 性能分析,并了解 Android 应用的安全加固措施。 第三部分:后端服务与云原生——支撑移动应用的强大后盾 一个完整的移动互联网产品离不开强大的后端支持。本系列将带领读者走进后端开发的世界,学习如何构建可扩展、高可用、安全的后端服务,为移动应用提供数据存储、用户认证、实时通信等关键能力。 Node.js/Python/Go 等后端语言与框架: 深入学习一种或多种主流后端开发语言及其对应的 Web 框架(如 Express.js, Django, Gin 等),掌握 RESTful API 设计、数据库交互、身份验证等。 数据库技术: 学习关系型数据库(如 MySQL, PostgreSQL)和 NoSQL 数据库(如 MongoDB, Redis)的使用,理解数据建模、索引优化、事务处理等。 云原生技术与容器化: 了解 Docker、Kubernetes 等容器化技术,学习如何在云平台上部署和管理后端服务,实现弹性伸缩和高可用。 微服务架构: 学习微服务的设计理念、拆分策略、服务治理、API 网关等,构建稳定可靠的分布式系统。 消息队列与实时通信: 掌握 Kafka、RabbitMQ 等消息队列的应用,实现异步通信和解耦;学习 WebSocket 等技术,实现实时数据推送。 第四部分:移动互联网产品工程化实践——从想法到落地 开发出优秀的应用只是第一步,将应用成功推向市场并持续迭代优化,则需要一套完善的工程化体系。本系列将聚焦于移动互联网产品的全生命周期管理,提供实用的方法论和工具。 敏捷开发流程与项目管理: 学习 Scrum、Kanban 等敏捷开发方法,掌握需求管理、任务分配、进度跟踪等技巧。 版本控制与持续集成/持续部署(CI/CD): 熟练使用 Git 进行版本管理,搭建 CI/CD 流水线,实现代码自动化构建、测试和部署。 自动化测试: 学习单元测试、集成测试、UI 自动化测试,确保代码质量,减少回归错误。 性能监控与用户行为分析: 引入 Firebase Analytics, Mixpanel 等工具,收集用户行为数据,分析应用性能,驱动产品迭代。 应用安全与隐私保护: 学习常见的移动应用安全漏洞及防护措施,了解数据加密、权限管理等,确保用户数据安全。 应用商店优化(ASO)与推广: 学习如何提升应用在应用商店的可见度,制定有效的推广策略。 商业化变现策略: 探讨广告变现、内购、订阅等多种商业化模式,帮助开发者实现盈利。 目标读者: 初学者: 希望系统学习移动互联网开发技术的在校学生、转行开发者。 在职开发者: 希望拓展技术栈、学习跨平台开发、提升原生应用开发技能、了解后端技术或掌握工程化实践的开发者。 技术团队负责人: 希望了解当前主流移动开发技术,为团队技术选型和规划提供参考的管理者。 创业者: 希望快速构建 MVP (Minimum Viable Product),验证商业想法的技术型创业者。 《移动互联网开发技术丛书》系列,将是您在移动互联网浪潮中乘风破浪的得力助手。我们致力于为您提供最前沿、最实用、最系统的技术指导,帮助您成为一名优秀的移动互联网开发者。

用户评价

评分

这本书的书名《Cocos2d-JS游戏开发快速入门到实战(移动互联网开发技术丛书)》让我觉得它非常务实,并且瞄准了当前移动互联网开发的热点。我作为一个正在从事移动互联网应用开发的技术人员,对游戏开发一直抱有浓厚的兴趣,但苦于没有一个合适的切入点。Cocos2d-JS作为一款基于JavaScript的游戏引擎,能够让我充分利用现有的JavaScript技能,这对我来说是一个巨大的吸引力。我希望这本书能够帮助我快速理解Cocos2d-JS的开发流程,掌握核心的API和开发工具,并且能够通过实际的项目案例来巩固所学知识。我更期待书中能够提供一些在实际项目开发中可能会遇到的典型问题及其解决方案,例如如何处理不同分辨率的适配问题、如何优化游戏的性能以适应低端设备、如何处理网络通信以及数据存储等等。我希望书中提供的“实战”案例能够具有代表性,并且能够让我学到一些通用的游戏开发思路和技巧,而不是仅仅停留在某个具体游戏的实现上,这样我才能将学到的知识迁移到我自己的项目中去。

评分

这本书简直是我最近技术学习路上的“及时雨”!作为一个对移动游戏开发跃跃欲试的新手,我一直希望能找到一本既能快速上手,又能带我深入理解核心概念的书。在翻阅了市面上不少关于游戏开发的教材后,我被《Cocos2d-JS游戏开发快速入门到实战》这本书的标题深深吸引了。它承诺的“快速入门”和“实战”让我看到了希望,尤其是在移动互联网开发技术这个大背景下,Cocos2d-JS的定位非常精准。我特别看重的是它是否能提供清晰易懂的讲解,让我这个初学者能够快速理解Cocos2d-JS的基本架构、精灵的创建与动画、场景的切换,以及用户输入的响应等等。我希望这本书能够循序渐进,从最基础的知识点开始,逐步引导我构建一个小型游戏。那些枯燥的理论描述我不太喜欢,我更倾向于通过实际的代码示例来学习,并且能够一步一步地跟着代码敲出来,看到预期的效果。这本书能否真正做到“快速入门”,是我非常期待验证的一点。我希望它不是那种“看了等于没看”的书,而是真的能让我这个“小白”在短时间内掌握一门实用的技术。

评分

这本书对于我这种有一定前端开发基础,但想跨界进入游戏开发领域的技术人员来说,简直是量身定做。我对Cocos2d-JS的了解仅限于听说,并不清楚它在实际开发中的优势和劣势,也不知道它与其他游戏引擎相比的特点。所以,我非常希望这本书能够深入剖析Cocos2d-JS的技术选型理由,它在处理性能、跨平台兼容性、资源管理等方面有哪些独到的解决方案。更重要的是,我希望书中能够提供一些“实战”案例,这些案例最好能涵盖不同类型的游戏,比如简单的平台跳跃、消除类游戏,甚至是塔防类游戏。我期待书中能够详细讲解如何利用Cocos2d-JS实现这些游戏的具体逻辑,包括物理引擎的使用、AI的设计、UI的交互逻辑以及性能优化方面的技巧。我希望书中提供的代码示例是高质量的,有良好的注释,并且能够在主流的移动设备上运行良好。如果书中还能触及一些项目管理、打包发布到不同平台的流程,那更是锦上添花了,这样我就可以从开发到最终部署有一个全面的认识,而不是仅仅停留在代码层面。

评分

我是一名独立游戏开发者,一直以来都渴望能够用更低的门槛和更快的速度来完成我的游戏创意。Cocos2d-JS作为一个JavaScript框架,吸引我的地方在于它能够让我利用熟悉的Web技术来开发游戏,并且能够轻松地发布到Web、iOS和Android等多个平台。我非常希望这本书能够帮助我系统地掌握Cocos2d-JS的各个模块,从最基础的渲染管线到更高级的物理引擎、骨骼动画、粒子系统等等。我尤其期待“实战”部分能够提供一些真正能落地的游戏项目,并且这些项目能够展示出Cocos2d-JS在不同游戏类型中的应用潜力。我希望书中能够包含一些关于游戏AI设计、关卡编辑器、碰撞检测、音效处理等方面的教程,并且能够给出清晰的代码示例。如果书中还能提及一些关于游戏性能调优、内存管理、资源打包和热更新的策略,那将是对我来说非常有价值的内容。我希望这本书能够让我从零基础快速成长为一名能够独立开发小型商业游戏的开发者。

评分

作为一个曾经的Cocos2d-x(C++版本)用户,我对Cocos2d框架并不陌生。这次选择《Cocos2d-JS游戏开发快速入门到实战》这本书,主要是想了解Cocos2d-JS与C++版本在API设计、性能表现以及生态系统上有什么异同,并且学习如何将现有的C++项目或者思路迁移到JS版本上。我期待书中能提供一些关于JS版本在性能优化方面的建议,比如如何减少JS调用C++的开销,或者如何利用JS的特性来提高开发效率。我尤其关注书中是否会介绍如何结合一些第三方JS库来增强游戏的功能,或者如何与原生App进行更深度的集成。当然,“实战”部分是我最看重的,我希望书中能有几个稍微复杂一些的示例,能够展示Cocos2d-JS在处理复杂场景、多人在线、网络同步等方面的能力。同时,我也希望书中能够提供一些关于游戏美术资源如何高效加载和管理的最佳实践,以及如何进行本地化处理。如果能分享一些关于游戏变现、广告接入等商业化方面的初步思路,那这本书的价值将大大提升。

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.teaonline.club All Rights Reserved. 图书大百科 版权所有