html5游戏开发实战pdf哪里教的好?

&HTML5路径图
来看看有趣的实战案例
服务***:400-678-8266专访张路斌:从HTML5到Unity的游戏开发之路
发表于 08:24|
作者单明珠
摘要:社区之星52期采访了非计算机专业出身、热爱游戏的张路斌,为了离梦想近一些,毕业后前往日本,选择在游戏行业发展。在这段时间里,他在CSDN博客里撰写了几十篇技术文章,并著有《HTML5 Canvas游戏开发实战》一书。
张路斌,英文名Lufy( ),非计算机专业出身,由于本身喜欢玩游戏,毕业后千里迢迢前往日本,从事游戏开发工作。一开始接触Java、.Net和PL/SQL开发工作,由于碰上金融危机公司裁员,便跳槽至一家小公司做了半年手机游戏开发,随后到一家互联网公司工作。现在在一家游戏公司上班,接触最多的是Unity开发。Lufy曾开发《杨家将传奇》、大型网页游戏《アイドルバトル》、《Flash游戏ポイガチャ》、多平台三国记系列游戏,以及数十款手机小游戏。在CSDN博客上撰写了几十篇的技术博文,还著有《HTML 5 Canvas游戏开发实战》一书,并独立开发了HTML5游戏引擎lufylegend。近日Lufy接受CSDN社区之星栏目的专访,让我们一起来看看他在日本游戏发展道路上的点点滴滴。CSDN:请先介绍下自己。Lufy:大学毕业后,我最先接触Java开发,后来到日本做.Net和PL/SQL开发。很不巧的是,我在日本碰到了严重的经济危机,一起出来的小伙伴们都回国了。相比下,我运气较好,找到了一家做手机游戏开发的小公司,后又跳槽至另一家互联网公司,主要接触PHP、JavaScript和Flash。现在在一家游戏公司工作,接触最多的是Unity。CSDN:非计算机专业出身,为什么会选择到日本,在游戏行业发展?Lufy:我做这个行业,主要是因为我喜欢玩游戏。游戏玩多了,自然就会有“游戏中的某个地方要是如何如何设计,或许会更好玩”之类的想法,就会想要自己去做一款游戏。大学时,我做了一款《杨家将传奇》,在同类游戏中,它的人气还算不错,现在也有不少人在玩。这款游戏对我的影响非常大,也更让我坚信游戏开发之路。毕业后来到日本,很大一部分原因是我比较喜欢日本的游戏,到日本发展或许会让自己离梦想更近。实际上,到去年年末之前,我都不算是一个全职的游戏开发者,我之所以一直在坚持,是因为我很喜欢游戏开发。HTML5的游戏开发经验之谈----缩短开发周期,并想办法维护CSDN:我们知道您曾独立开发大型网页游戏《アイドルバトル》、《Flash游戏ポイガチャ》、多平台三国记系列游戏,以及数十款手机小游戏,能和我们分享下经验吗?Lufy:经验谈不上,我就根据自身开发经验简单的说下。之前我开发的有点规模的游戏,现在都已下线了。前几天我听了一个游戏经验的分享,和我的想法不谋而合,我在这里和大家分享下。游戏开发者都知道,一款游戏是否会火,根本就是不可预计的,有的游戏画面特效做得相当绚丽,有的游戏内容非常有意思,有的游戏玩法特别新颖,但最后都被淘汰了。当然,以上这些因素都是一款好游戏应该具备的,但也不是必要的。有时你觉得远不如自己的游戏反而一夜之间火爆了,有些简单的不能再简单的游戏,反而取得了很大成功。所以,经验告诉我们,游戏开发,就是不断的重复再重复,挑战再挑战,没人知道这个游戏是否会让你或者你的团队“一夜暴富”。此外,我认为游戏开发应该尽可能的缩短开发周期,让市场来决定你的游戏是否生存下去,然后再想办法维护。就像很多美剧一样,拍摄几集就开始播,先观察观众的反映和需求,反映不好还可以调整,或者直接放弃。当然,还有一些开发者开发游戏是为了自己的兴趣或者单纯的为了实现自己的某个理想,对他们而言,游戏做出来了,就已经算成功了。CSDN:2013年时,您写了一本名为《HTML5 Canvas游戏开发实战》的书,能介绍下吗?Lufy:这本书有对HTML5
canvas的API的详细介绍,也有对lufylegend.js引擎的使用详解,更重要的是,书中以实例为向导,详细讲述对休闲、射击、物理以及网络游戏等各种类型游戏的开发流程,包括游戏分析、开发过程、代码解析和小结等相关内容,帮助读者了解每种类型游戏开发的详细步骤,让读者彻底掌握各种类型游戏的开发思想。最后,书中通过数据对比分析,指导读者提升程序的性能、写出高效的代码,从而开发出运行流畅的游戏。CSDN:既然您提到了HTML5游戏引擎lufylegend,那么能否介绍下为什么会有自己开发引擎的想法?Lufy:至于我为什么想开发自己的HTML5游戏引擎lufylegend,这里我依然引用《HTML5 Canvas游戏开发实战》一书前言中的一段话来回答我开发HTML5引擎的原由:我是一个喜欢不断学习新知识的人,所以当HTML5作为一种新技术出现的时候,我没有理由不去了解它。由于本身对JavaScript有一定的了解,所以我在学习HTML5的Canvas时,上手非常快。出于对ActionScript的喜爱,我一开始便试着在JavaScript中模仿ActionScript的API来做开发,并且在博客上发表了《用仿ActionScript的语法来编写HTML5》系列文章,这便是最初的lufylegend开源库件的构建过程。当我把自己研究的类库整合到一起后,发现它使用起来十分方便,使用它来开发游戏可以节约大量的开发时间,于是我将其分享到了网上供大家免费使用,希望给相关开发者提供便利。CSDN:lufylegend有哪些优势呢?Lufy:lufylegend的优势在于入门简单、性能高等特点。其实所有的引擎都有一套自己的标准,并在这个标准上进行封装和扩展,所以在渲染过程中必然要增加很多额外的处理和计算等,但这些都会导致引擎效率的降低。而我在这款引擎的设计和维护上,一直坚持以高性能为第一目标,尽量简化渲染流程,以达到接近原生渲染的速度。我之前做过一个测试发现,在Canvas 2D基础上,lufylegend的渲染速度高出其他引擎很大一截。目前,lufylegend正在追加WebGL渲染功能,相信不久后的2.0版本,lufylegend在渲染速度上依然会保持领先。当然一款引擎只比性能是不够的,还要比易用性。在lufylegend交流群里,很多人都说,lufylegend太简单了,用它一天就可以开发出一款简单的小游戏。这个绝不是吹牛,lufylegend在设计上模仿了Flash的API。此外,在lufylegend中还有显示列表、对象、继承、事件等,极大的弥补了JavaScript在开发过程中的不足。lufylegend中还提供了对Box 2D的简易封装,以及Tween,不同屏幕的自动适配等功能。此外,我还引入了一些在Unity开发中自己发现的一些比较实用的小功能,这都让lufylegend更方便使用。CSDN:HTML5浏览器兼容性问题让人很头疼,你怎么看待这样问题?Lufy:说到兼容性,这也是出现许多引擎的原因之一。不同浏览器会有不同的处理,比如不同屏幕大小的自动适配,比如各个浏览器对音频的支持度等。开发者要么自己进行处理,要么就接触第三方工具或者引擎来处理。一款引擎,只有帮助开发者解决问题,才能受到欢迎。我觉得大家可以对兼容性持乐观态度,因为,兼容性的问题不可能会完全消失,但随着一系列标准的完善,这类兼容性问题会越来越小,未来会更小。所以,兼容性、渲染性等问题,应该交给引擎和框架来解决,开发者应该把重心放在自己的产品和开发上。CSDN:你觉得HTML5在开发游戏时有哪些优势?对它未来发展有哪些看法?Lufy:用HTML5开发游戏最大优势在于它的跨平台性,即无需进行下载就可进入游戏。一个链接一个二维码就可以在任何平台上向其他人分享你的游戏,还有比这个更简单的传播方式吗?再一个开发JavaScript人员储备充足,这也是一个很大的优势。HTML5出现的时候,我认为它是未来Web的方向。在移动开发方面,HTML5已经是主流了,这个不用多说。随着移动端和PC端对WebGL等新功能的支持,也让HTML5有了更大的发展空间,我觉得不光是在游戏领域,未来HTML5一定会渗入到各个领域。Unity能够缩短游戏开发周期,但学习成本高CSDN:您最近刚换了工作,现任工作最多接触的是Unity开发,可以说您现在也是一位Unity初学者,请问在学习Unity时,遇到了哪些难题?Lufy:我本身英语比较差,unity的界面是全英文的,所以遇到第一个问题就是打开unity后,眼睛看到的基本都是问号。这个难题我只能自己去查资料、摸索,慢慢学习资料查多了,再多的问号也就变成了文字。我比较喜欢Flash开发,对于Flash的设计理念根深蒂固,所以刚接触Unity时,遇到2D界面的开发,我总是将Flash的思路带入到Unity中,不过经过公司Unity大牛的指点,最终回归正途。此外,Unity还有自己的一套标准,如果只是将以前完全不同领域的思路或做法强加到Unity当中,只会让后期开发变得越来越困难,这也是导致很多Unity开发者失败的原因之一。再一个就是unity太复杂,并不是短时间内就可以掌握的,我接触时间还比较短,现在依然在逐步深入学习当中。CSDN:Unity在3D引擎方面具备卓越的品质和优势,同时也支持2D游戏的开发,您觉得它和HTML5相比,有哪些不同和优劣势?Lufy:其实Unity和HTML5基本没有冲突点,Unity主要是App开发,而HTML5的优势主要是页游开发或者是依赖于WebView的端游开发,这要看公司的产品侧重哪一块了。不过既然问到了,我简单说一下自己对Unity的看法。Unity的优点很多,简单总结的话,主要有以下几个方面:相对于游戏引擎来说,功能非常完善;学习资料丰富,交流社区也很强大,开发案例多;可以在PC端预览,Debug方便;Editor的扩展方便;GUI、以及NGUI等UI组件丰富;多平台支持;可以直接在AssetStore中购买所需素材或组件等。因为以上优点,使用Unity开发,能够有效的缩短游戏的开发周期。当然缺点也有,比如说学习成本比较高,想短时间深入了解Unity是不可能的。CSDN:给我们简单的介绍下日本游戏市场吧?Lufy:这个问题比较大了,我只能简单的说下我对日本手游的一点了解。日本手游中卡牌游戏居多,游戏一般都采取免费下载、内部收费的形势。
日本的手游的发布渠道比较单一,一般只考虑苹果以及谷歌旗下的应用商店就可以了。日本用户消费意识很高,日本人对扭蛋尤其钟爱,其也是日本手游的主要收费方式之一,卡牌类、RPG类、养成类、战略类,无论什么类型,扭蛋几乎无处不在,而且所有人都会大把的往里砸钱。日本手机网速比较快,而且手机上网基本上都是包月形势,所以不用担心游戏流量问题。日本人对手机游戏的狂热程度绝对超出你的想象,路上、电车上、厕所里,任何地方都能看到低头摆弄手机玩游戏的人。这也决定了,能够适应碎片化时间的游戏会比较卖座。CSDN:以后会回国发展吗?怎样看待国内游戏市场的发展?Lufy:这个当然,以后肯定会回到国内发展的。其实我觉得无论国内还是国外,手游开发都将成为未来游戏开发的主流。而且国内有着全世界最大的用户群,很多国外公司都开始进军中国手游市场,把中国当成最大的游戏市场,包括我现在的公司也是。现在智能手机在国内已经很普遍了,而且性能越来越高,再加上微信等各种平台渠道的推广,所以未来国内的游戏市场也就是手游市场,手游市场必将取代PC游戏市场。CSDN:给同样热爱编程游戏的小伙伴们提供一些学习建议吧。Lufy:这是一个老生常谈的问题,之前也有很多人总结过了,我再总结一遍吧。自己多动手,有些东西看一百遍或者听一百遍,也不如自己写一遍理解的透彻。多看代码,现在开源的代码库这么多,这绝对是提高自己编程能力的一个捷径。多跟人交流,有些问题可能自己通过调查解决了,但如果听下其他人的想法,或许会学到更多。尤其在你刚接触到某个新领域的时候,一定要多看书,这个书包括电子书,或者互联网上一些从基础到深入的连载文章。在开发过程中,最忌讳的就是遇到问题不思考就发问,虽然我觉得大家都知道这样不好,但是这类人确实有很多。举个简单的例子,一个对象的某个属性可以设定为两个不同的值,对于会学习的人来说,他会将这两个值分别设定,然后看一下结果有什么不同。而另一部分人,会直接到论坛或者QQ群等地方去问。这就是自学能力差异的体现。若想获悉张路斌更多动态,请关注。
CSDN博客: 新浪微博:
社区之星访谈上期回顾:
更多精彩内容,请点击查看。CSDN社区之星专访栏目,欢迎推荐采访人或自荐,来分享你的成长经历和相关技术,相关信息请发送邮件至:shanmz#csdn.net(#换成@)。
推荐阅读相关主题:
CSDN官方微信
扫描二维码,向CSDN吐槽
微信号:CSDNnews
相关热门文章热销排行榜
1.2.3.4.5.6.7.8.9.10.
最近浏览的其他商品
浏览更多同类商品
【 】··········
HTML5游戏开发实战
978-7-111-39176-0
机械工业出版社
出版日期:
读者对象:
¥43.10&&&
立刻节省:¥15.90
所属分类:
Andioid群英传-神兵利..
《HTML5游戏开发实战》清晰而全面地展示了如何使用最新的HTML5 和CSS3 标准来构建纸牌、绘图、物理等各种常见类型的游戏。
  这是一本经典的HTML5游戏开发教程,它清晰而全面地展示了如何使用最新的HTML5和CSS3标准来构建各种常见类型的游戏。本书实战性非常强,围绕纸牌游戏、绘图游戏、,物理游戏和多人游戏精心组织了6个富有趣味性和技术性的游戏案例。如果动手实践这些案例,不仅能掌握各种类型游戏的开发思路和设计方法,而且还能掌握HTML5和CSS3技术中与游戏开发相关的理论知识。本书共分9章,第l章介绍HTML5、CSS3,以及相关的JavaScript API新功能:第2章通过使用DOM和jQuery创建传统游戏;第3章讨论如何用DOM和CSS3来创建游戏;第4章介绍在页面如何通过Canvas来绘制游戏并与之交互;第5章介绍如何在Canvas中绘制渐变效果和加入图像;第6章使用Audio元素给游戏添加声音效果和背景音乐;第7章使用新的本地存储APl保存和恢复游戏进度,进一步增强游戏;第8章讨论如何实现多人联网玩游戏;第9章讲解如何把Box2D集成到Canvas游戏中。
  本书以实例为导向,系统介绍网络游戏开发技术,结合具体示例的操作步骤讲解,浅显易懂,适合网络游戏开发人员、管理人员阅读。
这是因为当调用第2条fill命令时,Canvas中的路径列表还包含两个圆。因此,fill命令用绿色填充这两个圆,也就是重新填充原来红色的圆。   为了解决这个问题,需要确保在每次绘制一个新形状前都调用beginPath。   beginPath清空路径列表,所以下次调用fill和stroke命令时,它将只应用上次调用beginPath之后的所有路径。   牛刀小试   刚才我们讨论了一段代码,其中原打算绘制两个圆并分别用红色和绿色填充,而却绘制了两个绿色的圆。怎样添加beginPath命令才能让代码按原来的打算来绘制圆呢?   4.2.6 关闭路径   closePath函数将会从最新路径的终点到路径的起点之间绘制一条直线,用于闭合路径。如果我们只打算填充路径而不打算对其进行描边,closePath函数将不会影响结果。对比同一个半圆的两种结果,其中一个调用closePath而另一个没有调用closePath函数。  ……
  作者简介Makzan资深游戏开发专家和HTML5技术工程师,有多年游戏开发经验和丰富的HTML5开发经验,毕业于中国香港大学。42games公司创始人,他对多玩家虚拟世界设计、iOS游戏设计、Flash应用开发、基于Facebook的应用开发,以及以HTML5、CSS3、jQuery为代表的Web开发技术都有非常深入的研究,实战经验丰富。此外,他还是知名的技术作家和培训讲师,还著有《Flash Multiplayer VirtualWorlds》,曾经担任中国澳门计算机培训中心的课程讲师。
  译者简介吕定平资深软件开发工程师,从事系统软件开发和手机游戏开发多年,实战经验丰富。现就职于Cocos2d-X开源游戏引擎组织,从事Cocos2d-HTML5游戏引擎框架的开发以及将游戏移植到HTML5框架的工作,并参与过多款游戏的开发与移植。目前主要研究与手机游戏和WebGL图形开发相关的技术,致力于提***TML5游戏的开发效率和运行效率。
  陈升想HTML5中文网(html5china.
  com)创始人,HTML5技术布道者,致力于HTML5技术在中国的推广与普及,现就职于Cocos2d-X开源游戏引擎组织,专注于Cocos2d-HTML5游戏引擎框架的开发及《捕鱼达人》HTML5版本的移植。曾在国外从事网页设计及uI设计工作,之后转向HTML5游戏研发领域,开发并移植过多款HTML5游戏。
审校者简介n译者序n前言nn第1章 HTML5游戏概述n1.1 探索HTML5新功能n1.1.1 Canvasn1.1.2 音频n1.1.3 GeoLocationn1.1.4 WebGLn1.1.5 WebSocketn1.1.6 本地存储n1.1.7 离线应用程序n1.2 探索CSS3新功能n1.2.1 CSS3转换n1.2.2 CSS3变换n1.2.3 CSS3动画n1.3 HTML5和CSS3新功能的更多细节n1.4 创建HTML5游戏的好处n1.4.1 不需要第三方插件n1.4.2 不需要插件就能支持iOS设备n1.4.3 突破常规浏览器游戏限制n1.4.4 创建HTML5游戏n1.5 HTML5还能做些什么n1.5.1 《记忆配对》游戏n1.5.2 Sinuousn1.5.3 小行星式书签小程序n1.5.4 Quaken1.5.5 蝌蚪聊天室n1.5.6 Scrabb.lyn1.5.7 Aves引擎n1.6 浏览更多HTML5游戏n1.7 本书主要涉及哪些游戏n1.8 总结nn第2章 DOM游戏开发入门n2.1 准备开发工具n2.2 为DOM游戏准备HTML文档n2.2.1 新式HTML5 doctype声明n2.2.2 页眉和页脚n2.2.3 JavaScript代码最佳位置n2.2.4 页面加载完后运行代码n2.3 设置《乒乓球》游戏元素n2.3.1 jQuery简述n2.3.2 jQuery选择器基础知识n2.3.3 jQuery css函数n2.3.4 使用jQuery的好处n2.3.5 使用jQuery操纵DOM游戏元素n2.3.6 绝对位置的行为n2.4 获取玩家的键盘输入n2.4.1 了解按键代码n2.4.2 让常数更具可读性n2.4.3 用parseInt函数将字符串转换为数字n2.4.4 在控制台面板中直接执行JavaScript表达式n2.4.5 检查控制台窗口n2.5 支持玩家多键盘同时输入n2.5.1 更好地声明全局变量n2.5.2 用setInterval函数创建JavaScript定时器n2.5.3 理解游戏主循环n2.6 通过JavaScript间隔移动DOM对象n2.7 开始碰撞检测n2.8 动态显示HTML文本n2.9 总结nn第3章 用CSS3构建《纸牌记忆配对》游戏n3.1 用CSS3转换和变换模块移动游戏对象n3.1.1 2D变换函数n3.1.2 3D变换函数n3.1.3 用CSS3转换实现样式间过渡n3.2 创建翻牌效果n3.2.1 使用jQuery toggleClass函数切换类n3.2.2 通过z-index控制重叠元素的可见性n3.2.3 介绍CSS perspective属性n3.2.4 介绍背面可见性n3.3 创建《纸牌记忆配对》游戏n3.3.1 下载纸牌精灵表图像n3.3.2 设置游戏开发环境n3.3.3 使用jQuery复制DOM元素n3.3.4 使用jQuery的子节点过滤器选择首个子元素n3.3.5 垂直对齐DOM元素n3.3.6 通过背景位置来使用CSS精灵n3.4 给配对游戏添加游戏逻辑n3.4.1 在CSS转换完后执行代码n3.4.2 翻牌后延迟代码的执行n3.4.3 在JavaScript中随机化数组n3.4.4 通过HTML5自定义数据属性保存内部自定义数据n3.4.5 用JQuery访问自定义数据属性n3.4.6 制作其他纸牌游戏n3.5 在游戏中嵌入Web字体n3.6 总结nn第4章 用Canvas和绘图API构建《解题》游戏n4.1 介绍HTML5 Canvas元素n4.2 在Canvas中绘制圆形n4.2.1 当Web浏览器不支持Canvas时的反馈信息n4.2.2 用Canvas的arc函数绘制圆和图形n4.2.3 把角度转换为弧度n4.2.4 在Canvas中执行路径绘制的操作n4.2.5 在切换路径样式时先调用BeginPathn4.2.6 关闭路径n4.2.7 将画圆功能封装成函数n4.2.8 在JavaScript中生成随机数n4.2.9 保存圆的位置n4.3 在Canvas中画线n4.4 通过Canvas中的鼠标事件与绘制对象交互n4.4.1 在Canvas元素中获取鼠标位置n4.4.2 在Canvas中检测鼠标事件是否发生在圆上n4.4.3 游戏主循环n4.4.4 清除Canvasn4.5 在Canvas中检测线的交点n4.6 制作《解题》游戏n4.6.1 定义关卡数据n4.6.2 判断是否过关n4.6.3 显示当前关卡和完成进度n4.7 总结nn第5章 构建大师级Canvas游戏n5.1 用渐变色来填充图形n5.1.1 给渐变添加色标n5.1.2 填充径向渐变色n5.2 在Canvas中绘制文本n5.3 在Canvas中绘制图像n5.3.1 使用drawImage函数n5.3.2 装点Canvas游戏n5.4 在Canvas中播放精灵表动画n5.5 创建多层Canvas游戏n5.6 总结nn第6章 给游戏添加声音效果n6.1 给PLAY按钮添加声音效果n6.1.1 定义audio元素n6.1.2 播放声音n6.1.3 暂停声音n6.1.4 调整音量大小n6.1.5 使用jQuery 的hover事件n6.1.6 创建Ogg格式的音频以支持Mozilla Firefoxn6.1.7 不同Web浏览器所支持的音频格式n6.2 构建迷你钢琴音乐游戏n6.2.1 在HTML5游戏中创建场景n6.2.2 让音乐播放可视化n6.2.3 为音乐游戏选择正确的歌曲n6.2.4 存储和提取歌曲关卡数据n6.2.5 获取游戏的流逝时间n6.2.6 创建音乐点n6.2.7 移动音乐点n6.3 将PLAY按钮与音乐游戏场景链接起来n6.4 构建键盘驱动的迷你钢琴音乐游戏n6.4.1 通过按键来击打三条音乐线n6.4.2 判断按键是否击中音乐点n6.4.3 通过给定索引将元素从数组中移除n6.5 给迷你钢琴游戏添加额外的功能n6.5.1  根据玩家的表现而调整音乐音量n6.5.2 从游戏中删除音乐点n6.5.3 保存最近5个音乐点的成功率计数n6.5.4 记录音符来得到关卡数据n6.6 音乐播放完后处理audio事件n6.7 总结nn第7章 利用本地存储技术保存游戏数据n7.1 使用HTML5本地存储技术保存数据n7.1.1 创建游戏结束对话框n7.1.2 在浏览器中保存成绩n7.1.3 通过本地存储技术保存和加载数据n7.1.4 本地存储只保存字符串值n7.1.5 将本地存储对象看做关联数组n7.2 在本地存储中保存对象n7.2.1 在JavaScript中获取当前日期和时间n7.2.2 使用原生JSON将对象编码成字符串n7.2.3 从JSON字符串中加载所保存的对象n7.2.4 在控制台窗口中检测本地存储n7.3 用一种漂亮的彩带效果来告诉玩家破记录了n7.4 保存整个游戏的进度n7.4.1 保存游戏进度n7.4.2 从本地存储中删除记录n7.4.3 在JavaScript中复制数组n7.4.4 恢复游戏进度n7.5 总结nn第8章 利用WebSocket构建多人
游戏-《我画你猜》n8.1 初试WebSocket Web应用程序n8.2 ***WebSocket服务器n8.2.1 ***Node.JS WebSocket服务器n8.2.2 创建广播连接数的WebSocket服务器n8.2.3 初始化WebSocket服务器n8.2.4 在服务器端***连接事件n8.2.5 在服务器端获取已连接的客户端数n8.2.6 向所有已连接的浏览器广播消息n8.2.7 创建客户端来连接WebSocket服务器并获取总连接数n8.2.8 建立WebSocket连接n8.2.9 WebSocket客户端事件n8.3 使用WebSocket构建聊天室n8.3.1 向服务器发送消息n8.3.2 从客户端发送消息到服务器n8.3.3 在服务器端接收消息n8.4 通过在服务端广播接收到的消息来创建聊天室n8.5 使用Canvas和WebSocket制作共享绘图板n8.5.1 构建本地绘图板n8.5.2 广播绘图数据给所有已连接的浏览器n8.5.3 定义用于在客户端与服务器之间进行通信的数据对象n8.5.4 将画线数据打包成JSON以便于广播n8.5.5 再现从其他客户端接收到的画线数据n8.6 构建多人游戏:《我画你猜》n8.6.1 控制多人游戏的游戏流程n8.6.2 在服务器端罗列出所有已连接客户端n8.6.3 在服务器端发送消息给指定的连接n8.6.4 改进现有游戏n8.7 用CSS装点《我画你猜》游戏n8.8 总结nn第9章 用Box2D和Canvas构建物理类汽车游戏n9.1 ***Box2d JavaScript库n9.1.1 用b2World创建新的物理世界对象n9.1.2 用b2AABB定义物理边界n9.1.3 给物理世界设置重力n9.1.4 设置 Box2D忽略休眠物体n9.2 在物理世界中创建静态地面n9.2.1 创建物体形状n9.2.2 创建物理物体n9.3 在Canvas上绘制物理世界n9.4 在物理世界里创建动态的长方形n9.5 推进物理世界的时间n9.6 给游戏***车轮n9.7 创建物理汽车n9.8 通过键盘给汽车施加动力n9.8.1 向物体施加动力n9.8.2 理解ApplyForce与ApplyImpulse之间的不同点n9.8.3 给游戏环境添加坡道n9.9 在Box2D世界检测碰撞n9.10 重启游戏n9.11 让游戏支持关卡n9.12 为Box2D绘制图形轮廓n9.12.1 使用形状和物体的userData属性n9.12.2 根据物理物体的状态来绘制每一帧图像n9.12.3 在Canvas中旋转和翻转图片n9.13 给游戏添加装饰,让游戏更具趣味性n9.13.1 用燃料的限制加速n9.13.2 用CSS3进度条显示剩余燃料n9.14 总结n9.14.1 HTML5 游戏引擎n9.14.2 游戏精灵以及贴图n9.14.3 声音效果nn附录 突击测验***
***专线:010- ***邮箱:
Copyright & 北发图书网 2007,
All Rights Reserved
北京北发电子商务股份有限公司 版权所有html5游戏开发视频教程?
Udacity有一个(虽然好像需要被墙了的youtube?)好处是互动比较多,边看视频边做练习,坏处是这节课的质量控制似乎不是很好,在Udacity平均水平之下,不过对于有一定编程基础的的人来说应该不成问题。
已有帐号?
无法登录?
社交帐号登录

参考资料

 

随机推荐