当前位置:主页 > 书籍配套资源 > Cocos2D配套资源
《Cocos2D权威指南》源代码下载地址

《Cocos2D权威指南》源代码下载地址

  • 更新:2022-06-11
  • 大小:4.4 MB
  • 类别:Cocos2D
  • 作者:王寒、屈光辉、周雪彬
  • 出版:机械工业出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

本书是目前Coco2D领域内容最全面、系统和深入的一本著作,也是技术版本最新的一本著作。由国内iOS和Cocos2D领域的先驱和自身专家撰写,不仅系统讲解了Cocos2D的使用方法、技术要点、工作原理、高级知识、开发技巧、最佳实践和性能优化,而其还通过精心设计的典型案例详细讲解了Cocos2D游戏设计与开发的完整过程,极具启发性和可操作性。此外,还介绍了如何进行应用的测试与发布,以及Cocos3D、Cocos2D-x、Cocos2D-HTML 5、Cocos2D-Python等衍生技术。

全书共19章,分为三个部分:基础篇(1~9章)系统讲解了Cocos2D v2.0的功能特性、使用方法、技术要点和工作原理,通过超级玛丽等3个经典游戏将Cocos2D中的核心类、动作、特效、动画、文本渲染系统、事件处理机制、声音、瓷砖地图、Box2D等内容贯穿其中,真是有趣,易于理解;实战篇(10~12章),通过对Angel Panda和Angry Panda两款经典游戏的设计与开发过程的讲解,为读者展示了使用Cocos2D开发游戏的完整流程,可操作性极强;高级篇(13~19章),着重讲解了Cocos2D v2.0的高级知识、实用开发技巧和最佳实践,包括粒子系统、CocosBuilder和Shader、在游戏中添加对IAP的支持、性能分析与优化、产品的测试/发布/推广,以及Cocos2D的延伸技术

封面图

目录

  • 前言
  • 第一部分基础篇
  • 第1章开始前的准备工作/ 2
  • 1.1什么是Cocos2D/ 2
  • 1.1.1Cocos2D的特点/ 2
  • 1.1.2Cocos2D的主要功能/ 2
  • 1.1.3Cocos2D应用/ 3
  • 1.2下载与安装/ 4
  • 1.2.1下载Cocos2D/ 4
  • 1.2.2安装Cocos2D模板/ 6
  • 1.2.3创建Cocos2D-iPhone的帮助文档/ 9
  • 1.2.4使用Cocos2D中内置的项目/ 10
  • 1.3HelloCocos2D实例/ 10
  • 1.3.1创建HelloCocos2D项目/ 10
  • 1.3.2添加小飞机/ 11
  • 1.3.3让飞机飞行/ 13
  • 1.4深入学习HelloCocos2D项目/ 13
  • 1.4.1初识场景和节点/ 13
  • 1.4.2实现代码分析/ 14
  • 1.5在设备上运行HelloCocos2D项目/ 23
  • 1.5.1使用Xcode的自动设置/ 23
  • 1.5.2在设备上编译运行项目/ 24
  • 1.6本章小结/ 24
  • 第2章你的第一款iPhone游戏—垂直射击游戏/ 25
  • 2.1准备工作/ 25
  • 2.2构建游戏场景/ 28
  • 2.2.1添加资源目录/ 28
  • 2.2.2添加游戏背景/ 28
  • 2.2.3添加玩家飞机/ 29
  • 2.2.4添加敌机/ 30
  • 2.3玩家交互/ 33
  • 2.3.1添加加速计移动/ 33
  • 2.3.2添加子弹并射击/ 35
  • 2.4碰撞检测/ 37
  • 2.5游戏音效/ 38
  • 2.6最后的点缀/ 39
  • 2.6.1添加计分和玩家生命值/ 39
  • 2.6.2添加游戏胜利和结束画面/ 42
  • 2.7本章小结/ 44
  • 第3章Cocos2D核心类/ 45
  • 3.1Cocos2D节点基础知识/ 45
  • 3.1.1节点层级图/ 45
  • 3.1.2什么是锚点/ 46
  • 3.2CCNode节点类/ 47
  • 3.2.1CCNode类的属性/ 47
  • 3.2.2CCNode类的方法/ 50
  • 3.3CCScene场景类/ 57
  • 3.3.1CCTransitionScene场景切换/ 58
  • 3.3.2Cocos2D支持的场景过渡效果/ 59
  • 3.4CCLayer层类/ 60
  • 3.4.1CCLayer类的作用/ 61
  • 3.4.2CCLayerColor色彩层/ 62
  • 3.4.3CCLayerGradient渐变色层/ 63
  • 3.4.4CCMenu菜单类/ 63
  • 3.5CCTexture纹理类/ 65
  • 3.5.1纹理和纹理图集/ 65
  • 3.5.2CCTexture2D、CCTextureCache和CCTextureAtlas/ 66
  • 3.6CCSprite精灵类/ 67
  • 3.6.1CCSprite类的属性及方法/ 67
  • 3.6.2CCSpriteBatchNode精灵表单/ 71
  • 3.6.3CCSpriteFrame精灵帧/ 73
  • 3.6.4CCSpriteFrameCache精灵帧缓存/ 74
  • 3.7Cocos2D中的单例/ 76
  • 3.7.1Cocos2D中的常用单例/ 77
  • 3.7.2CCDirector导演类/ 77
  • 3.8垂直射击游戏—加载游戏数据/ 81
  • 3.8.1注释draw方法和背景/ 81
  • 3.8.2加载游戏资源/ 82
  • 3.8.3修改AppDelegate.m文件/ 88
  • 3.8.4修改HelloWorldLayer/ 89
  • 3.8.5代码重构/ 90
  • 3.9本章小结/ 93
  • 第4章Cocos2D中的动作、特效与动画/ 94
  • 4.1Cocos2D中的节点动作/ 94
  • 4.1.1运行ActionsTest测试/ 94
  • 4.1.2Cocos2D中的动作类/ 96
  • 4.2动作的分类及使用/ 98
  • 4.2.1基本动作/ 98
  • 4.2.2组合动作/ 102
  • 4.2.3Ease动作/ 105
  • 4.2.4延迟动作/ 107
  • 4.2.5方法回调动作/ 107
  • 4.2.6块语句调用动作/ 112
  • 4.2.7反转动作/ 116
  • 4.2.8特殊动作/ 117
  • 4.3垂直射击游戏:加载进度条与滚动背景/ 117
  • 4.3.1使用CCProgressTo和CCProgressFromTo动作添加进度条/ 117
  • 4.3.2使用CCFollow和CCParallaxNode动作添加滚动背景/ 119
  • 4.4Cocos2D中的特效/ 122
  • 4.4.1Cocos2D中的网格/ 122
  • 4.4.2特效的种类及使用/ 123
  • 4.4.3让节点对象返回最初状态/ 127
  • 4.5Cocos2D中的动画/ 127
  • 4.5.1Cocos2D中与动画相关的类/ 127
  • 4.5.2在Cocos2D中实现动画效果/ 128
  • 4.6使用Zwoptex工具实现动画效果/ 129
  • 4.6.1安装Zwoptex工具/ 129
  • 4.6.2制作精灵表单/ 130
  • 4.6.3制作精灵动画/ 132
  • 4.7垂直射击游戏—添加飞行和爆炸动画/ 134
  • 4.7.1添加玩家飞机飞行动画/ 134
  • 4.7.2添加飞机爆炸效果/ 136
  • 4.8本章小结/ 138
  • 第5章Cocos2D中的文本渲染系统/ 139
  • 5.1文本渲染系统的组成/ 139
  • 5.1.1CCLabelTTF类/ 139
  • 5.1.2CCLabelAtlas类/ 145
  • 5.1.3CCLabelBMFont类/ 147
  • 5.2标签的对齐方式/ 151
  • 5.3使用第三方工具创建字体纹理图集/ 152
  • 5.3.1Hiero工具的使用方法/ 153
  • 5.3.2创建字体图集步骤/ 153
  • 5.4垂直射击游戏—美化游戏界面/ 155
  • 5.4.1渲染文本/ 155
  • 5.4.2实现倒计时功能/ 156
  • 5.5本章小结/ 158
  • 第6章Cocos2D中的事件处理机制/ 159
  • 6.1iOS中的交互事件处理/ 159
  • 6.1.1什么是用户输入事件/ 159
  • 6.1.2多点触摸事件处理机制/ 160
  • 6.1.3重力感应事件处理机制/ 162
  • 6.2Cocos2D中的触摸事件处理/ 164
  • 6.2.1如何处理触摸事件/ 165
  • 6.2.2模板中自带的TouchesTest项目/ 168
  • 6.2.3实战—随手指移动的小球/ 169
  • 6.3Cocos2D中的重力感应事件/ 172
  • 6.3.1如何处理重力感应事件/ 172
  • 6.3.2实战—受加速计控制的小球/ 172
  • 6.4垂直射击游戏—暂停游戏/ 177
  • 6.4.1PauseLayer类的实现/ 177
  • 6.4.2CustomMenu类的实现/ 180
  • 6.4.3游戏主场景添加暂停层/ 180
  • 6.4.4PauseLayerProtocol代理/ 181
  • 6.5本章小结/ 182
  • 第7章Cocos2D世界的声音/ 183
  • 7.1认识CocosDenshion音效引擎/ 183
  • 7.1.1CocosDenshion重要API/ 183
  • 7.1.2CocosDenshion相关类/ 184
  • 7.1.3Cocos2D支持的CocosDenshion/ 185
  • 7.2SimpleAudioEngine使用方法/ 186
  • 7.2.1添加背景音乐/ 187
  • 7.2.2控制音乐的播放和停止/ 188
  • 7.2.3判断当前是否播放背景音乐/ 192
  • 7.2.4添加音效/ 194
  • 7.3CDSoundEngine使用方法/ 195
  • 7.3.1设置CDSoundEngine/ 195
  • 7.3.2播放背景音乐和音效/ 199
  • 7.4游戏菜单中的声音设置选项/ 202
  • 7.5垂直射击游戏—GameOver/ 208
  • 7.5.1实现背景音乐暂停功能/ 208
  • 7.5.2实现菜单场景/ 208
  • 7.5.3实现高分榜场景/ 215
  • 7.5.4实现GameOver场景/ 221
  • 7.6本章小结/ 223
  • 第8章在Cocos2D中使用瓷砖地图/ 224
  • 8.1认识瓷砖地图/ 224
  • 8.2Tiled地图编辑器/ 225
  • 8.2.1安装Tiled/ 225
  • 8.2.2用Tiled绘制地图/ 226
  • 8.2.3在地图中添加对象/ 230
  • 8.3在项目中使用瓷砖地图/ 232
  • 8.3.1TMX文件解析/ 232
  • 8.3.2Cocos2D中的瓷砖地图类/ 233
  • 8.3.3在项目中载入TMX地图/ 238
  • 8.3.4使用TMX地图中的对象/ 239
  • 8.4超级玛丽—实现简单的原型/ 242
  • 8.4.1准备工作/ 243
  • 8.4.2创建高清版本Tiled地图/ 244
  • 8.4.3在代码里加载Tiled地图/ 248
  • 8.4.4利用WBTMXTool工具制作普清版本Tiled地图/ 250
  • 8.4.5添加遥感控制器/ 252
  • 8.5本章小结/ 254
  • 第9章物理引擎—更真实的Cocos2D世界/ 255
  • 9.1游戏物理引擎概况/ 255
  • 9.1.1物理引擎的应用/ 255
  • 9.1.2常见的游戏物理引擎/ 257
  • 9.2认识Box2D / 257
  • 9.2.1Box2D碰撞检测和处理系统/ 258
  • 9.2.2Box2D中的核心概念/ 259
  • 9.3示例项目HelloBox2D详解/ 265
  • 9.3.1使用模板创建HelloBox2D项目/ 265
  • 9.3.2解读HelloBox2D默认项目代码/ 267
  • 9.3.3完善HelloBox2D项目/ 280
  • 9.4Box2D实战—物理射击游戏/ 291
  • 9.4.1准备工作/ 292
  • 9.4.2创建会转动手臂的小人/ 294
  • 9.4.3发射子弹/ 300
  • 9.4.4使用PhysicEditor工具制作凹槽/ 303
  • 9.4.5凹槽实现升降机效果/ 306
  • 9.4.6处理碰撞传感器/ 307
  • 9.4.7加入更多障碍/ 309
  • 9.5超级玛丽—Box2D与Tiled结合/ 310
  • 9.5.1添加玛丽和物体的物理属性/ 310
  • 9.5.2使玛丽行走和跳跃/ 319
  • 9.5.3为游戏中的金币和箱子添加物理属性/ 325
  • 9.5.4碰撞检测—吃金币/ 329
  • 9.5.5游戏特效—吸金币/ 332
  • 9.5.6加入游戏音效/ 335
  • 9.5.7设计胜利和失败条件/ 335
  • 9.6本章小结/ 338
  • 第二部分实战篇
  • 第10章Angel Panda游戏的设计与实现/ 340
  • 10.1iOS游戏完整的制作流程/ 340
  • 10.2Angel Panda游戏设计/ 342
  • 10.2.1Angel Panda的创意来源/ 342
  • 10.2.2Angel Panda的故事背景及游戏规则/ 342
  • 10.2.3Angel Panda的游戏体验流程/ 343
  • 10.3开发前的准备工作/ 343
  • 10.3.1下载并安装合适的开发工具/ 343
  • 10.3.2将项目分解成不同的模块/ 344
  • 10.3.3准备游戏中所需要的资源/ 345
  • 10.4Angel Panda游戏的实现/ 345
  • 10.4.1使用Cocos2D模板创建新项目/ 345
  • 10.4.2设置游戏主场景/ 350
  • 10.4.3添加游戏角色/ 354
  • 10.4.4添加用户交互机制/ 368
  • 10.4.5添加游戏逻辑/ 370
  • 10.4.6添加音效/ 374
  • 10.5本章小结/ 377
  • 第11章AngryPanda游戏的设计与框架搭建/ 378
  • 11.1AngryPanda游戏设计/ 378
  • 11.1.1AngryPanda的创意来源/ 378
  • 11.1.2AngryPanda的故事背景及游戏规则/ 378
  • 11.1.3AngryPanda的游戏体验流程/ 379
  • 11.2开发前的准备工作/ 379
  • 11.2.1下载并安装合适的开发工具/ 379
  • 11.2.2将项目分解成不同的模块/ 380
  • 11.2.3准备游戏需要的资源/ 381
  • 11.2.4使用Box2D模板创建新项目/ 382
  • 11.3数据存储和游戏设置/ 383
  • 11.3.1创建和实现GameData类/ 384
  • 11.3.2GameData类中的重要方法/ 386
  • 11.3.3创建Constants.h头文件/ 389
  • 11.4游戏中的音效管理/ 390
  • 11.4.1创建GameSounds类/ 390
  • 11.4.2GameSounds类中的重要方法/ 391
  • 11.5游戏中的辅助界面/ 391
  • 11.5.1游戏开始界面/ 392
  • 11.5.2游戏介绍界面/ 400
  • 11.5.3关卡选择界面/ 404
  • 11.5.4关卡结束界面/ 407
  • 11.6本章小结/ 410
  • 第12章Angry Panda游戏主场景的实现/ 411
  • 12.1Box2D世界的物体/ 411
  • 12.1.1创建抽象物体类/ 411
  • 12.1.2创建熊猫角色/ 414
  • 12.1.3创建平台物体/ 418
  • 12.1.4创建外星怪物/ 419
  • 12.1.5创建遮挡物体/ 423
  • 12.1.6创建并放置攻击目标/ 425
  • 12.2实现游戏的主场景/ 427
  • 12.2.1创建MainScene类/ 428
  • 12.2.2场景的视觉呈现/ 431
  • 12.2.3如何与用户交互/ 437
  • 12.2.4实现游戏的逻辑机制/ 442
  • 12.3游戏中的碰撞检测机制/ 443
  • 12.3.1创建ContactListener类/ 444
  • 12.3.2碰撞检测机制的实现/ 444
  • 12.4本章小结/ 447
  • 第三部分高级篇
  • 第13章粒子系统/ 450
  • 13.1Cocos2D中的粒子系统/ 450
  • 13.1.1粒子系统相关的类/ 450
  • 13.1.2Cocos2D内置的粒子系统/ 452
  • 13.2手动创建粒子系统示例/ 453
  • 13.2.1创建ParticleEffect项目/ 453
  • 13.2.2添加Cocos2D内置的粒子系统/ 454
  • 13.2.3手动创建粒子系统类/ 455
  • 13.2.4设置粒子系统的属性/ 459
  • 13.3plist文件/ 464
  • 13.3.1particle.plist文件内容/ 464
  • 13.3.2使用plist文件创建粒子系统/ 466
  • 13.4粒子工具Particle Designer/ 468
  • 13.4.1下载安装Particle Designer/ 468
  • 13.4.2Particle Designer工具栏/ 469
  • 13.4.3如何设置Emitter Config属性/ 470
  • 13.4.4如何在项目中使用粒子系统/ 472
  • 13.5本章小结/ 473
  • 第14章CocosBuilder和Shader/ 474
  • 14.1CocosBuilder初体验/ 474
  • 14.1.1下载安装CocosBuilder/ 474
  • 14.1.2查看Example目录结构/ 476
  • 14.1.3如何打开样例文件/ 477
  • 14.2第一个CocosBuilder项目/ 478
  • 14.2.1创建HelloWorldCocosBuilder场景/ 478
  • 14.2.2加载HelloWorldCocosBuilder场景/ 483
  • 14.2.3建立文档与代码的连接/ 484
  • 14.2.4完善HelloWorldCocosBuilder场景/ 486
  • 14.3HelloWorldCocosBuilder项目功能完善/ 489
  • 14.3.1制作GameMenu场景/ 490
  • 14.3.2制作About场景/ 493
  • 14.3.3发布ZIP格式场景资源文件/ 495
  • 14.3.4如何支持多个设备分辨率/ 496
  • 14.4着色器/ 496
  • 14.4.1着色器的种类及工作原理/ 497
  • 14.4.2编写自己的Shader程序/ 500
  • 14.4.3如何为Sprite定制顶点着色器/ 503
  • 14.4.4如何定制片段着色器/ 507
  • 14.4.5旋风效果示例/ 509
  • 14.5本章小结/ 512
  • 第15章在游戏中添加对Game Center的支持/ 513
  • 15.1什么是Game Center/ 513
  • 15.1.1Game Center的功能/ 513
  • 15.1.2Game Center的特点/ 513
  • 15.2在项目中添加对Game Center的支持/ 514
  • 15.2.1注册iOS开发者账号/ 514
  • 15.2.2为应用创建并设置App ID/ 514
  • 15.2.3在iTunes Connect中注册应用/ 517
  • 15.2.4开启对Game Center的支持/ 520
  • 15.2.5在iTunes Connect中添加成就系统/ 520
  • 15.2.6在iTunes Connect中设置积分排行榜/ 523
  • 15.3示例项目GKTapper详解/ 524
  • 15.3.1添加Game Kit框架/ 525
  • 15.3.2检查Game Center是否可用/ 526
  • 15.3.3验证玩家是否登录Game Center/ 527
  • 15.3.4实现成就系统/ 530
  • 15.3.5实现积分排行榜/ 535
  • 15.4本章小结/ 539
  • 第16章在游戏中添加对IAP的支持/ 540
  • 16.1什么是IAP/ 540
  • 16.1.1IAP的功能/ 540
  • 16.1.2IAP中的商品类型/ 540
  • 16.1.3IAP实现机制/ 542
  • 16.2Store Kit Framework介绍/ 545
  • 16.2.1Store Kit Framework中的购买核心类/ 545
  • 16.2.2Store Kit Framework中的商品核心类/ 548
  • 16.2.3SKDownload类/ 550
  • 16.2.4Store Kit Framework中的协议/ 550
  • 16.3在iTunes Connect配置IAP/ 551
  • 16.3.1在iTunes Connect中添加商品信息/ 552
  • 16.3.2在iTunes Connect中添加沙盒测试账号/ 558
  • 16.4在项目中添加与IAP相关的代码/ 560
  • 16.4.1IAPGame项目简介/ 560
  • 16.4.2在项目中添加Store Kit框架/ 562
  • 16.4.3添加MyStore类/ 563
  • 16.5在设备中测试并提交审核/ 576
  • 16.6本章小结/ 583
  • 第17章游戏性能分析与优化/ 584
  • 17.1如何发现性能瓶颈/ 584
  • 17.1.1Instruments基本功能/ 584
  • 17.1.2Instruments中内置的分析工具/ 585
  • 17.1.3如何使用Time Profiler工具模板/ 586
  • 17.1.4如何使用OpenGL ES Driver工具模板/ 588
  • 17.1.5使用空白模板创建定制分析工具/ 590
  • 17.2Cocos2D内置的性能分析工具/ 591
  • 17.2.1CCProfiler和CCProfilingTimer/ 591
  • 17.2.2如何使用性能分析工具/ 593
  • 17.3优化Cocos2D游戏性能/ 595
  • 17.3.1在Cocos2D中开启自动引用计数/ 595
  • 17.3.2使用CCSpriteBatchNode 替代CCSprite/ 597
  • 17.3.3提升游戏性能的其他技巧/ 598
  • 17.4本章小结/ 600
  • 第18章产品的测试、发布与推广/ 601
  • 18.1用户体验测试/ 601
  • 18.1.1测试用户的选择/ 601
  • 18.1.2产品测试的步骤/ 601
  • 18.2产品的上传与发布/ 610
  • 18.2.1加入iOS开发者计划/ 610
  • 18.2.2在App Store中发布产品/ 618
  • 18.3App产品的宣传与推广/ 636
  • 18.3.1产品推广的原因/ 636
  • 18.3.2产品推广的方法/ 636
  • 18.4本章小结/ 638
  • 第19章Cocos2D的延伸/ 639
  • 19.1Cocos3D简介/ 639
  • 19.1.1Cocos3D的基本特性/ 639
  • 19.1.2Cocos3D核心类简介/ 640
  • 19.1.3下载并安装Cocos3D/ 642
  • 19.2Cocos2D-x 简介/ 643
  • 19.2.1创建iOS版的HelloWorld项目/ 643
  • 19.2.2创建基于Cocos2D-x的Android项目/ 648
  • 19.3Cocos2D-HTML5详解/ 661
  • 19.3.1Cocos2D-HTML5简介/ 661
  • 19.3.2下载安装Cocos2D-HTML5/ 662
  • 19.3.3安装配置WebServer(可选)/ 664
  • 19.3.4解析helloHTML5World项目/ 665
  • 19.4Cocos2D-Python简介/ 671
  • 19.5本章小结/ 671

资源下载

资源下载地址1:https://pan.baidu.com/s/1XOWkcct08mcFz633vp7DiA

网友留言