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] +...