【问题标题】:Image sprite doesn't show in my canvas with PIXI JS使用 PIXI JS 在我的画布中未显示图像精灵
【发布时间】:2020-03-23 23:13:31
【问题描述】:
我的图像精灵 (game.player_booba) 没有出现,我不明白为什么。尽管修改了它在 x 和 y 中的位置,但它并没有出现。
game.player_booba.init();
game.player_booba.sprite.image.addEventListener("load", (event) => {
window.requestAnimationFrame(game.loop);
});
我的代码笔:
https://codepen.io/manonragnotti/pen/abbeEKO
谢谢
【问题讨论】:
标签:
javascript
image
canvas
sprite
pixi.js
【解决方案1】:
说实话,我看不出这个问题与 PIXI 有什么关系。您已将它包含在您的 codePen 项目中,但您从未真正使用过该库。所有的渲染都是直接使用原生的 2d canvas api 完成的。而角色精灵之所以没有在屏幕上绘制,是因为它是在画布上绘制的,从未添加到 DOM 中。看到这一行
buffer = document.createElement("canvas").getContext("2d");
您正在创建一个 canvas 元素,然后将其 2d 上下文分配给变量“buffer”,但 DOM 元素实际上从未添加到文档中。所以你需要做这样的事情:
bufferCanvas = document.createElement("canvas");
buffer = bufferCanvas.getContext("2d");
window.document.body.appendChild(bufferCanvas);