html5 利用canvas实现超级玛丽简单动画


Posted in HTML / CSS onSeptember 06, 2013

最近在学习html5,其中涉及到很关键的元素canvas-画布,在网上下载了一些游戏源代码,虽然能看懂,但是想单独地针对某个功能提取出来还是有难处的,于是乎自己又上网查找了一些例子,才将超级玛丽简单的动画给实现了。

设计中涉及到的主要的drawImage()函数

(1)drawImage(image,x,y)该方式是最基本的操作方式,具体是指将你整个要操作的图像对象描绘在指定的坐标轴上,左上角为(0,0)原点,以此计算你想要它描绘的位置
(2)drawImage(image,x,y,width,height)该方式是指将你需要操作的图像对象进行缩放,然后描绘到画板上,width和height就是你希望图片描绘之后的大小
(3)drawImage(image,sourceX,sourceY,sourceWidth,sourceHeight,destX,destY,destWidth,destHeight) 这是最为复杂的方式,但是也是相当有用的。它表示在你想要操作的图像对象中,选择你想要定位的左上角位置(sourceX,sourceY),然后截取你想要的宽度和高度(sourceWidth,sourceHeight),将截取出来的图像描绘到画板对应的位置(destX,destY)以及对应的范围(destWidth,destHeight)之内。

1.首先上网找了下超级玛丽连贯的走路动作的图片(如下图)
html5 利用canvas实现超级玛丽简单动画 
2.新建一个html5文件,此处命名为mario.html,定义canvas元素,开始动画start按钮,暂停动画stop按钮
html5 利用canvas实现超级玛丽简单动画 
3.相关的js函数
html5 利用canvas实现超级玛丽简单动画
 
html5 利用canvas实现超级玛丽简单动画

HTML / CSS 相关文章推荐
利用SVG和CSS3来实现一个炫酷的边框动画
Jul 22 HTML / CSS
基于CSS3实现图片模糊过滤效果
Nov 19 HTML / CSS
CSS3过渡transition效果实例介绍
May 03 HTML / CSS
用CSS3打造HTML5的Logo(实现代码)
Jun 16 HTML / CSS
CSS3实现鼠标悬停显示扩展内容
Aug 24 HTML / CSS
HTML5 WebGL 实现民航客机飞行监控系统
Jul 25 HTML / CSS
HTML5 embed 标签使用方法介绍
Aug 13 HTML / CSS
html5 利用canvas实现超级玛丽简单动画
Sep 06 HTML / CSS
完美解决IE8下不兼容rgba()的问题
Mar 31 HTML / CSS
h5实现获取用户地理定位的实例代码
Jul 17 HTML / CSS
浅析HTML5 meta viewport参数
Oct 28 HTML / CSS
浅谈css清除浮动(clearfix和clear)的用法
May 21 HTML / CSS
HTML5 贪吃蛇游戏实现思路及源代码
Sep 03 #HTML / CSS
HTML5实现经典坦克大战坦克乱走还能发出一个子弹
Sep 02 #HTML / CSS
HTML5实现一个能够移动的小坦克示例代码
Sep 02 #HTML / CSS
HTML5 window/iframe跨域传递消息 API介绍
Aug 26 #HTML / CSS
HTML5在a标签内放置块级元素示例代码
Aug 23 #HTML / CSS
HTML5 script元素async、defer异步加载使用介绍
Aug 23 #HTML / CSS
html5基础教程常用技巧整理
Aug 20 #HTML / CSS
You might like
外媒评选出10支2020年最受欢迎的Dota2战队
2021/03/05 DOTA
PHP中的类-什么叫类
2006/11/20 PHP
php的array_multisort()使用方法介绍
2012/05/16 PHP
解析关于java,php以及html的所有文件编码与乱码的处理方法汇总
2013/06/24 PHP
使用PHP连接多种数据库的实现代码(mysql,access,sqlserver,Oracle)
2016/12/21 PHP
服务端 VBScript 与 JScript 几个相同特性的写法 By shawl.qiu
2007/03/06 Javascript
jquerydom对象的事件隐藏显示和对象数组示例
2013/12/10 Javascript
js浮点数精确计算(加、减、乘、除)
2013/12/26 Javascript
JS添加或修改控件的样式(Class)实现方法
2016/10/15 Javascript
EasyUI 中combotree 默认不能选择父节点的实现方法
2016/11/07 Javascript
H5上传本地图片并预览功能
2017/05/08 Javascript
jQuery获取table表中的td标签(实例讲解)
2017/07/28 jQuery
详解webpack2+React 实例demo
2017/09/11 Javascript
浅谈es6 javascript的map数据结构
2017/12/14 Javascript
Angular4 反向代理Details实践
2018/05/30 Javascript
微信小程序:数据存储、传值、取值详解
2019/05/07 Javascript
Vue的v-model的几种修饰符.lazy,.number和.trim的用法说明
2020/08/05 Javascript
原生jQuery实现只显示年份下拉框
2020/12/24 jQuery
[50:48]LGD vs CHAOS 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
[50:02]完美世界DOTA2联赛PWL S2 Magma vs FTD 第三场 11.29
2020/12/03 DOTA
[05:49]DOTA2-DPC中国联赛 正赛 Elephant vs LBZS 选手采访
2021/03/11 DOTA
Python中的变量和作用域详解
2016/07/13 Python
python numpy函数中的linspace创建等差数列详解
2017/10/13 Python
利用python在excel里面直接使用sql函数的方法
2019/02/08 Python
python接口自动化(十六)--参数关联接口后传(详解)
2019/04/16 Python
Django CBV类的用法详解
2019/07/26 Python
浅析Python 简单工厂模式和工厂方法模式的优缺点
2020/07/13 Python
Python logging自定义字段输出及打印颜色
2020/11/30 Python
Python字节单位转换(将字节转换为K M G T)
2021/03/02 Python
GNC健安喜美国官网:美国第一营养品牌
2016/07/22 全球购物
平面设计的岗位职责
2013/11/08 职场文书
会计系个人求职信范文分享
2013/12/20 职场文书
主题酒店策划书
2014/01/28 职场文书
使用Golang的channel交叉打印两个数组的操作
2021/04/29 Golang
Python进阶学习之带你探寻Python类的鼻祖-元类
2021/05/08 Python
《王国之心》迎来了发售的20周年, 野村哲发布贺图
2022/04/11 其他游戏