为了账号安全,请及时绑定邮箱和手机立即绑定

HTML5小游戏---爱心鱼(上)

难度中级
时长 2小时34分
学习人数
综合评分9.50
139人评价 查看评价
9.6 内容实用
9.5 简洁易懂
9.4 逻辑清晰
如果在写的时候,发现有问题的,可以参考我的代码,在gitHub上。可以在这里找到https://github.com/cj96248/tinyHeart,图片和js代码都有,可以完美运行。
绘制果实偏移的原因是因为lineWidth和lineCap两个属性,指定lineWidth,canvas绘制逻辑是是指定x坐标左右各8px的宽度这样绘制,lineCap属性会增加8px的高度 所以果实的位置x和y各偏移了8px

最新回答 / 随_忆
可以参考我的代码,在gitHub上。可以在这里找到https://github.com/cj96248/tinyHeart,图片和js代码都有,可以完美运行,不过不要直接拷贝过去啊,我也是自己敲的。
要是这个也能实现弹幕就好了,走神的遇到走心的就变得值得了

最赞回答 / 郭越呱呱呱
已解决,是浏览器问题,用谷歌浏览器的小伙伴们记得把js文件链接在body里,不要放在head

已采纳回答 / frontEndDeveloper
可以称为离屏Canvas,就是有一个canvas不显示,这样就可以把不显示的canvas中的部分图形绘制到显示的canvas中.
ctx1.drawImage(this.bigBody,-this.bigBody.width*0.5,-this.bigBody.height*0.5);
ctx1.drawImage(this.bigTail,-this.bigTail.width*0.5+30,-this.bigTail.height*0.5);
ctx1.restore();
}
大鱼:
momObj.prototype.draw = function(){
ctx1.save();
ctx1.translate(this.x,this.y);/*方法转换画布的用户坐标系统。平移,将画布的坐标原点向左右方向移动x,向上下方向移动y.canvas的默认位置是在(0,0)*/
ctx1.drawImage(this.bigEye,-this.bigEye.width*0.5,-this.bigEye.height*0.5);

最新回答 / 我想说什么来着
function drawBackground(){ ctx2.drawImage(bgPic, 0, 0, canWidth = 800, canHeight = 600);}应该是main.js中的canWidth = can1.width; canHeight = can1.canHeight;没有获取到值

最新回答 / 苦逼的存在
http://www.imooc.com/learn/515 ,右上角有一个资料下载。图片资源在那里。

最新回答 / 性别男爱好女
额,你关心她笑干嘛。。。。。
老师好厉害,之前背景一直出不来,又看了一遍发现少漏了一个点,老师棒棒的
为什么果实出不来喃?求大神解答
课程须知
1、对html、css基础知识已经掌握。 2、对JavaScript的基础知识掌握,如数组、类、对象。
老师告诉你能学到什么?
1、html5 canvas制作游戏理念 2、html5 canvas 绘图API 3、游戏中的碰撞检测 4、认识几个数学函数 5、物体池概念 6、序列帧动画的控制

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消