11/**
2- * See the included usage [examples](https://github.com/liabru/matter-js/tree/master/examples).
2+ * The `Matter.RenderPixi` module is an example renderer using pixi.js.
3+ * See also `Matter.Render` for a canvas based renderer.
34*
45* @class RenderPixi
56*/
@@ -24,6 +25,10 @@ var Common = require('../core/Common');
2425 controller : RenderPixi ,
2526 element : null ,
2627 canvas : null ,
28+ renderer : null ,
29+ container : null ,
30+ spriteContainer : null ,
31+ pixiOptions : null ,
2732 options : {
2833 width : 800 ,
2934 height : 600 ,
@@ -50,17 +55,19 @@ var Common = require('../core/Common');
5055 transparent = ! render . options . wireframes && render . options . background === 'transparent' ;
5156
5257 // init pixi
53- render . context = new PIXI . WebGLRenderer ( render . options . width , render . options . height , {
58+ render . pixiOptions = render . pixiOptions || {
5459 view : render . canvas ,
5560 transparent : transparent ,
5661 antialias : true ,
5762 backgroundColor : options . background
58- } ) ;
59-
60- render . canvas = render . context . view ;
61- render . container = new PIXI . Container ( ) ;
63+ } ;
64+
65+ render . renderer = render . renderer || new PIXI . WebGLRenderer ( render . options . width , render . options . height , render . pixiOptions ) ;
66+ render . container = render . container || new PIXI . Container ( ) ;
67+ render . spriteContainer = render . spriteContainer || new PIXI . Container ( ) ;
68+ render . canvas = render . canvas || render . renderer . view ;
6269 render . bounds = render . bounds || {
63- min : {
70+ min : {
6471 x : 0 ,
6572 y : 0
6673 } ,
@@ -76,7 +83,6 @@ var Common = require('../core/Common');
7683 render . primitives = { } ;
7784
7885 // use a sprite batch for performance
79- render . spriteContainer = new PIXI . Container ( ) ;
8086 render . container . addChild ( render . spriteContainer ) ;
8187
8288 // insert canvas
@@ -149,7 +155,7 @@ var Common = require('../core/Common');
149155 if ( isColor ) {
150156 // if solid background color
151157 var color = Common . colorToNumber ( background ) ;
152- render . context . backgroundColor = color ;
158+ render . renderer . backgroundColor = color ;
153159
154160 // remove background sprite if existing
155161 if ( bgSprite )
@@ -178,7 +184,7 @@ var Common = require('../core/Common');
178184 RenderPixi . world = function ( engine ) {
179185 var render = engine . render ,
180186 world = engine . world ,
181- context = render . context ,
187+ renderer = render . renderer ,
182188 container = render . container ,
183189 options = render . options ,
184190 bodies = Composite . allBodies ( world ) ,
@@ -236,7 +242,7 @@ var Common = require('../core/Common');
236242 for ( i = 0 ; i < constraints . length ; i ++ )
237243 RenderPixi . constraint ( engine , constraints [ i ] ) ;
238244
239- context . render ( container ) ;
245+ renderer . render ( container ) ;
240246 } ;
241247
242248
0 commit comments