可以使用PIXI将绘制的图像转换为精灵吗?

时间:2019-04-02 10:25:00

标签: javascript pixi.js

我最近一直在使用PIXI.js来创建基本游戏。当我尝试在远程位置玩游戏时,遇到了一个基于CORS的问题(我在本地托管我的图像,而这些图像正是导致该问题的原因。)遇到此问题后,我在外部托管了这些图像,但是继续遇到此问题:

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the
remote resource at http://example.com/myimage.png.
(Reason: CORS header ‘Access-Control-Allow-Origin’ missing).

作为一种变通方法,我一直在尝试使用PIXI使用javascript创建图像,但是我没有找到一种从绘制的图形创建精灵的方法。例如:

var graphics = new PIXI.Graphics();
var redSquare = function(){
  graphics.beginFill(0xffffff);
  graphics.drawRect(50,50,100,100);
  graphics.endFill();
}
var red = new PIXI.Sprite.from(redSquare());

是否可以从PIXI中绘制的矩形中创建类似于我的伪JavaScript的东西(如上)?

1 个答案:

答案 0 :(得分:2)

我相信您需要使用渲染器中的.generateTexture方法: http://pixijs.download/dev/docs/PIXI.Renderer.html#generateTexture

如果您以如下方式创建应用:var app = new PIXI.Application(),则渲染器将位于app.renderer
类似的东西:

var redSquare = new PIXI.Graphics();
redSquare.beginFill(0xffffff);
redSquare.drawRect(50,50,100,100);
redSquare.endFill();
var red = new PIXI.Sprite(app.renderer.generateTexture(redSquare));