我应该如何处理 Pixi.js 中的像素网格渲染?

How should I approach rendering pixel grid in Pixi.js?

我正在尝试制作一款简单的、基于像素的实时游戏,以使用新的 HTML5 技术获得乐趣:

游戏的概念将类似于贪吃蛇。为了允许各种模式,我决定将基本渲染基于像素网格——这也将使计算碰撞变得容易得多,我这样做并不是为了训练我的解析几何技能。其他视觉效果稍后会添加,现在我只需要渲染几种不同颜色的像素即可。

就性能而言,最佳策略是什么?现代屏幕非常大,所以我预计会有多达 5000 个像素。

好吧,看起来很脏但很简单的方法是我们从 Pixi 创建一些 Graphics 对象:

this.stage = new PIXI.Container();
...
this.gameMap = new PIXI.Graphics();

然后,在数据已更改的每个渲染操作中:

GameRenderer.prototype.drawPixels = function() {
  var gr = this.gameMap;
  this.stage.removeChild(this.gameMap);
  //This clears previous image. May be ommited in special cases
  gr.clear();

  for( y coordinate... ) {
    for( x coordinate...) {
      if(something here) {
        gr.lineStyle(0, 0x0000FF, 1);
        gr.beginFill(PIXEL COLOR HERE, 1);
        gr.drawRect(x+20, y+20, 1, 1);
      }
    }
    }
  }
  this.stage.addChild(this.gameMap);
}