采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师,我查了好多遍code,都没发现有啥问题,但是背景图就是加载不出来。不知道为什么会这样?
export const Resources = [
[
'background'
,
'res/background.png'
],
'land'
'res/land.png'
'pencilUp'
'res/pie_up.png'
'pencilDown'
'res/pie_down.png'
'birds'
'res/birds.png'
'startButton'
'res/start_button.png'
]
];
但是我的宽和高都和视频一样的,还是没能把背景图渲染出来啊。
//初始化整个游戏的精灵,作为游戏开始的入口
import {ResourceLoader} from
"./js/base/ResourceLoader.js"
;
import {BackGround} from
"./js/runtime/BackGround.js"
export class Main {
constructor() {
this
.canvas = document.getElementById(
'game_canvas'
);
.ctx =
.canvas.getContext(
'2d'
const loader = ResourceLoader.create();
loader.onloaded(map =>
.onResourceFirstloaded(map));
let image =
new
Image();
image.src =
'../res/background.png'
image.onload = () => {
.ctx.drawImage(
image,
0,
image.width,
image.height,
image.height
}
onResourceFirstloaded(map) {
let background =
BackGround(
.ctx, map.get(
));
background.draw();
是不是资源路径有问题?image.src = '/res/background.png';
没错啊,我也是这样写的
这个应该是你的,就是这个图片的,整个的坐标上出现问题了,你看你的图片他只加载了上面一部分,而下面是并没有被绘制出来的,也就是说呢,你的问题是出在你的末尾参数,也就是决定他的高度的参数上的。
但是我的宽和高都和视频一样的,还是没能把背景图渲染出来啊。 //初始化整个游戏的精灵,作为游戏开始的入口 import {ResourceLoader} from "./js/base/ResourceLoader.js"; import {BackGround} from "./js/runtime/BackGround.js"; export class Main { constructor() { this.canvas = document.getElementById('game_canvas'); this.ctx = this.canvas.getContext('2d'); const loader = ResourceLoader.create(); loader.onloaded(map => this.onResourceFirstloaded(map)); let image = new Image(); image.src = '../res/background.png'; image.onload = () => { this.ctx.drawImage( image, 0, 0, image.width, image.height, 0, 0, image.width, image.height ); } } onResourceFirstloaded(map) { let background = new BackGround(this.ctx, map.get('background')); background.draw(); } }
登录后可查看更多问答,登录/注册
官方同步,第一时间掌握整套微信小游戏开发核心技术
1.0k 13
1.2k 12
2.7k 11
1.4k 8
1.2k 8
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号