Phaser current version test environment
Basic Phaser setup for testing
HTML
<script src="http://cdn.jsdelivr.net/phaser/2.4.1/phaser.js"></script>
<script src="https://dl.dropboxusercontent.com/u/14053711/earcut.js"></script>
<div id="test"></div>
JavaScript
// switch between renderers. problem appears only in webgl
var game = new Phaser.Game(500, 400, Phaser.WEBGL, 'test');
// var game = new Phaser.Game(500, 400, Phaser.CANVAS, 'test');
var BasicGame = function(game) {};
BasicGame.Boot = function (game) {
// nothing here
};
BasicGame.Boot.prototype =
{
preload: function() {
game.load.baseURL = 'http://examples.phaser.io/assets/';
game.load.crossOrigin = 'anonymous';
game.load.image('phaser', 'sprites/phaser-dude.png');
},
create: function()
{
game.gfx = game.add.graphics(200, 200);
game.gfx.beginFill(0xFFFFFF, 1);
game.gfx.drawPolygon(new Phaser.Polygon(-104, -99.80000000000001, 0, -130, 92, -97.19999999999999, 256, 98.80000000000001, -97 , 95.19999999999999));
game.gfx.endFill();
game.RT = game.add.renderTexture(500, 400);
game.RTDisplay = game.add.sprite(0, 0, game.RT);
game.gfx.tint = 0xFF0000;
game.RT.renderXY(game.gfx, 200, 200, true);
game.gfx.tint = 0xFFFFFF;
},
update: function()
{
},
render: function()
{
}
};
PIXI.WebGLGraphics.buildPoly = function(graphicsData, webGLData)
{
var points = graphicsData.points;
if(points.length < 6)return;
// get first and last point.. figure out the middle!
var verts = webGLData.points;
var indices = webGLData.indices;
var length = points.length / 2;
// sort color
var color = PIXI.hex2rgb(graphicsData.fillColor);
var alpha = graphicsData.fillAlpha;
var r = color[0] * alpha;
var g = color[1] * alpha;
var b = color[2] * alpha;
// var triangles = PIXI.PolyK.Triangulate(points);
var triangles = earcut(points, null, 2);
if(!triangles)return false;
var vertPos = verts.length / 6;
var i = 0;
for (i = 0; i < triangles.length; i+=3)
{
indices.push(triangles[i] + vertPos);
indices.push(triangles[i] +...