也不想你难过
2018-09-14 10:19
为什么我尝试不调用gameloop 把drawBackground放在game或者init里调用都不会显示背景 只有放在gameloop里用game调用才会显示背景
bgPic.src = "./src/background.jpg";
上面代码执行后开始加载图片,加载成功需要一点点时间,图片还没完全加载好,就执行了你init里的drawBackground方法,所以无法绘图(把该方法放到setTimeout里延迟一点时间调用你可以看到能绘制图片)
另外,如果你把gameloop里window.requestAnimFrame这行注释掉不重复调用drawBackground画背景的话,也是无法显示图片,
所以,图片显示不显示,和放game或init里没有关系,主要看画图时图片是否已经加载完成,
个人理解,不知道是否正确。
bgPic.src = './src/background.jpg';
bgPic.onload = drawBackground;
HTML5小游戏---爱心鱼(上)
92348 学习 · 551 问题
相似问题