html5游戏开发简单入门指南346.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
HTML5游戏制作完全指南 ? ? 简介 你想使用HTML5的Canvas制作一款游戏吗?跟着这个教程,你将立刻上道儿。 阅读该教程需要至少熟悉javascript相关知识。 你可以先玩这款 HYPERLINK /space_demo/ 游戏或者直接阅读文章并且下载游戏 HYPERLINK /wp-content/uploads/2010/12/space_demo.zip 源码。 ? 创建画布 在画任何东西之前,我们必须创建一个画布。因为这是完全指南,并且我们将用到jQuery. var CANVAS_WIDTH = 480; var CANVAS_HEIGHT = 320; var canvasElement = $(canvas width= + CANVAS_WIDTH + height= + CANVAS_HEIGHT + /canvas); var canvas = canvasElement.get(0).getContext(2d); canvasElement.appendTo(body); ? 游戏循环 为了呈现给玩家连贯流畅的游戏动画,我们要频繁地渲染画布来欺骗玩家的眼睛。 var FPS = 30; setInterval(function() { update(); draw(); }, 1000/FPS); 现在我们先不管update和draw里面的实现,重要的是我们要知道setInterval()会周期性的执行update和draw ? Hello world 现在我们已经搭建好了一个循环的架子,我们去修改update和draw方法来写一些文字到屏幕。 function draw() { canvas.fillStyle = #000; // Set color to black canvas.fillText(Sup Bro!, 50, 50); } 专家提醒: 当你稍微更改了一些代码的时候就执行一下程序,这样可以更快的找到程序出错地方。 静止文字正常的显示出来了。因为我们已经有了循环,所以我们可以很容易地让文字动起来~~~ var textX = 50; var textY = 50; function update() { textX += 1; textY += 1; } function draw() { canvas.fillStyle = #000; canvas.fillText(Sup Bro!, textX, textY); } 执行程序。如果你一步一步照着上面做下来,可以看到文字移动。但是上一次的文字却还留在屏幕上,因为我们没有擦除画布。现在我们在draw方法中加入擦除方法。 function draw() { canvas.clearRect(0, 0, CANVAS_WIDTH, CANVAS_HEIGHT); canvas.fillStyle = #000; canvas.fillText(Sup Bro!, textX, textY); } 现在你可以看到文字在屏幕上移动了,它已经算是一个真正意义上的游戏,只不过是个半成品。 ? 创建player 创建一个包含player所有信息的对象,并且要有draw方法。这里创建了一个简单的对象包含了所有的player信息。 var player = { color: #00A, x: 220, y: 270, width: 32, height: 32, draw: function() { canvas.fillStyle = this.color; canvas.fillRect(this.x, this.y, this.width, this.height); } }; 我们现在用一个纯色的矩形来代表player.当我们把它加入游戏当中的时候,我们需要清除画布并且画上player. function draw() { canvas.clearRect(0, 0, CANVAS_WIDTH, CANVAS_HEIGHT); player.draw(); } ? 键盘控制 使用jQuery Hotkeys  HYPERLINK /tzuryby/jquery.hotkeys jQuery Hotkeys plugin在处理键盘行为的时候,可以更加容易的兼容不同的浏览器。让开发者不用因为不同浏览器之间的keyCode?andcharCode不同而苦恼,我们这样绑定事件: $(document).bind(keydown, left, function() { ...

文档评论(0)

xeve238 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档