Skip to content
This repository was archived by the owner on Feb 23, 2023. It is now read-only.

Commit f38119a

Browse files
author
Adi
committed
Merge pull request #40 from adireddy/develop
application utility class updated to specify renderer to use
2 parents fe4f47a + 26b91ac commit f38119a

20 files changed

+77
-44
lines changed

docs.xml

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13485,34 +13485,37 @@ Documentation for this class was provided by <a href="https://developer.mozilla.
1348513485
<x path="Bool"/>
1348613486
<meta><m n=":noCompletion"/></meta>
1348713487
</_skipFrame>
13488-
<_setDefaultValues set="method" line="96">
13488+
<_setDefaultValues set="method" line="103">
1348913489
<f a=""><x path="Void"/></f>
1349013490
<meta><m n=":noCompletion"/></meta>
1349113491
</_setDefaultValues>
13492-
<start public="1" set="method" line="107"><f a=""><x path="Void"/></f></start>
13493-
<_onWindowResize set="method" line="127">
13492+
<start public="1" set="method" line="118"><f a="?renderer" v="'auto'">
13493+
<c path="String"/>
13494+
<x path="Void"/>
13495+
</f></start>
13496+
<_onWindowResize set="method" line="142">
1349413497
<f a="event">
1349513498
<c path="js.html.Event"/>
1349613499
<x path="Void"/>
1349713500
</f>
1349813501
<meta><m n=":noCompletion"/></meta>
1349913502
</_onWindowResize>
13500-
<_onRequestAnimationFrame set="method" line="136">
13503+
<_onRequestAnimationFrame set="method" line="151">
1350113504
<f a=""><x path="Void"/></f>
1350213505
<meta><m n=":noCompletion"/></meta>
1350313506
</_onRequestAnimationFrame>
13504-
<_calculateElapsedTime set="method" line="148">
13507+
<_calculateElapsedTime set="method" line="163">
1350513508
<f a=""><x path="Void"/></f>
1350613509
<meta><m n=":noCompletion"/></meta>
1350713510
</_calculateElapsedTime>
13508-
<set_stats set="method" line="154">
13511+
<set_stats set="method" line="169">
1350913512
<f a="val">
1351013513
<x path="Bool"/>
1351113514
<x path="Bool"/>
1351213515
</f>
1351313516
<meta><m n=":noCompletion"/></meta>
1351413517
</set_stats>
13515-
<new public="1" set="method" line="91"><f a=""><x path="Void"/></f></new>
13518+
<new public="1" set="method" line="98"><f a=""><x path="Void"/></f></new>
1351613519
<meta><m n=":keep"/></meta>
1351713520
</class>
1351813521
<typedef path="pixi.CanvasElement" params="" file="pixi/DomDefinitions.hx" module="pixi.DomDefinitions">

haxelib.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
"tags": ["js","haxe","pixi","extern","web"],
55
"description": "Externs of pixi.js v2.2.5 for Haxe - JavaScript 2D webGL renderer with canvas fallback.",
66
"contributors": ["adireddy"],
7-
"releasenote": "added applyScale method DisplayObject",
8-
"version": "2.2.7",
7+
"releasenote": "application utility class updated",
8+
"version": "2.2.8",
99
"url": "https://github.com/adireddy/haxe-pixi",
1010
"dependencies": {
1111

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "pixijs",
3-
"version": "2.2.7",
3+
"version": "2.2.8",
44
"description": "Externs of pixi.js v2.2.0 for Haxe - JavaScript 2D webGL renderer with canvas fallback.",
55
"repository": {
66
"type": "git",

pixi/Application.hx

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@
88

99
package pixi;
1010

11+
import pixi.renderers.webgl.WebGLRenderer;
12+
import pixi.renderers.canvas.CanvasRenderer;
1113
import js.html.Event;
1214
import js.html.CanvasElement;
1315
import js.Browser;
@@ -79,6 +81,11 @@ class Application {
7981
*/
8082
var _stage(default, null):Stage;
8183

84+
public static inline var AUTO:String = "auto";
85+
public static inline var RECOMMENDED:String = "recommended";
86+
public static inline var CANVAS:String = "canvas";
87+
public static inline var WEBGL:String = "webgl";
88+
8289
@:noCompletion var _canvas:CanvasElement;
8390
@:noCompletion var _renderer:IRenderer;
8491
@:noCompletion var _stats:Stats;
@@ -104,7 +111,11 @@ class Application {
104111
_skipFrame = false;
105112
}
106113

107-
public function start() {
114+
/*
115+
* Type of the renderer to use AUTO | RECOMMENDED | CANVAS | WEBGL
116+
* @default AUTO
117+
*/
118+
public function start(?renderer:String = AUTO) {
108119
_canvas = Browser.document.createCanvasElement();
109120
_canvas.style.width = width + "px";
110121
_canvas.style.height = height + "px";
@@ -117,7 +128,11 @@ class Application {
117128
renderingOptions.view = _canvas;
118129
renderingOptions.resolution = pixelRatio;
119130

120-
_renderer = Detector.autoDetectRenderer(width, height, renderingOptions);
131+
if (renderer == AUTO) _renderer = Detector.autoDetectRenderer(width, height, renderingOptions);
132+
else if (renderer == RECOMMENDED) _renderer = Detector.autoDetectRecommendedRenderer(width, height, renderingOptions);
133+
else if (renderer == CANVAS) _renderer = new CanvasRenderer(width, height, renderingOptions);
134+
else _renderer = new WebGLRenderer(width, height, renderingOptions);
135+
121136
Browser.document.body.appendChild(_renderer.view);
122137
if (resize) Browser.window.onresize = _onWindowResize;
123138
Browser.window.requestAnimationFrame(cast _onRequestAnimationFrame);

samples/_output/hx-pixi-basics.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ pixi.Application.prototype = {
2121
this.resize = true;
2222
this._skipFrame = false;
2323
}
24-
,start: function() {
24+
,start: function(renderer) {
25+
if(renderer == null) renderer = "auto";
2526
var _this = window.document;
2627
this._canvas = _this.createElement("canvas");
2728
this._canvas.style.width = this.width + "px";
@@ -32,7 +33,7 @@ pixi.Application.prototype = {
3233
var renderingOptions = { };
3334
renderingOptions.view = this._canvas;
3435
renderingOptions.resolution = this.pixelRatio;
35-
this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions);
36+
if(renderer == "auto") this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions); else if(renderer == "recommended") this._renderer = PIXI.autoDetectRecommendedRenderer(this.width,this.height,renderingOptions); else if(renderer == "canvas") this._renderer = new PIXI.CanvasRenderer(this.width,this.height,renderingOptions); else this._renderer = new PIXI.WebGLRenderer(this.width,this.height,renderingOptions);
3637
window.document.body.appendChild(this._renderer.view);
3738
if(this.resize) window.onresize = $bind(this,this._onWindowResize);
3839
window.requestAnimationFrame($bind(this,this._onRequestAnimationFrame));
@@ -108,13 +109,13 @@ samples.basics.Main.main = function() {
108109
samples.basics.Main.__super__ = pixi.Application;
109110
samples.basics.Main.prototype = $extend(pixi.Application.prototype,{
110111
_init: function() {
111-
this.set_stats(true);
112112
this.backgroundColor = 13158;
113113
this.onUpdate = $bind(this,this._onUpdate);
114114
this.resize = false;
115115
this.width = 800;
116116
this.height = 600;
117117
pixi.Application.prototype.start.call(this);
118+
this.set_stats(true);
118119
}
119120
,_onUpdate: function(elapsedTime) {
120121
this._bunny.rotation += 0.1;

samples/_output/hx-pixi-bitmaptext.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ pixi.Application.prototype = {
2121
this.resize = true;
2222
this._skipFrame = false;
2323
}
24-
,start: function() {
24+
,start: function(renderer) {
25+
if(renderer == null) renderer = "auto";
2526
var _this = window.document;
2627
this._canvas = _this.createElement("canvas");
2728
this._canvas.style.width = this.width + "px";
@@ -32,7 +33,7 @@ pixi.Application.prototype = {
3233
var renderingOptions = { };
3334
renderingOptions.view = this._canvas;
3435
renderingOptions.resolution = this.pixelRatio;
35-
this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions);
36+
if(renderer == "auto") this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions); else if(renderer == "recommended") this._renderer = PIXI.autoDetectRecommendedRenderer(this.width,this.height,renderingOptions); else if(renderer == "canvas") this._renderer = new PIXI.CanvasRenderer(this.width,this.height,renderingOptions); else this._renderer = new PIXI.WebGLRenderer(this.width,this.height,renderingOptions);
3637
window.document.body.appendChild(this._renderer.view);
3738
if(this.resize) window.onresize = $bind(this,this._onWindowResize);
3839
window.requestAnimationFrame($bind(this,this._onRequestAnimationFrame));

samples/_output/hx-pixi-blur.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ pixi.Application.prototype = {
2121
this.resize = true;
2222
this._skipFrame = false;
2323
}
24-
,start: function() {
24+
,start: function(renderer) {
25+
if(renderer == null) renderer = "auto";
2526
var _this = window.document;
2627
this._canvas = _this.createElement("canvas");
2728
this._canvas.style.width = this.width + "px";
@@ -32,7 +33,7 @@ pixi.Application.prototype = {
3233
var renderingOptions = { };
3334
renderingOptions.view = this._canvas;
3435
renderingOptions.resolution = this.pixelRatio;
35-
this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions);
36+
if(renderer == "auto") this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions); else if(renderer == "recommended") this._renderer = PIXI.autoDetectRecommendedRenderer(this.width,this.height,renderingOptions); else if(renderer == "canvas") this._renderer = new PIXI.CanvasRenderer(this.width,this.height,renderingOptions); else this._renderer = new PIXI.WebGLRenderer(this.width,this.height,renderingOptions);
3637
window.document.body.appendChild(this._renderer.view);
3738
if(this.resize) window.onresize = $bind(this,this._onWindowResize);
3839
window.requestAnimationFrame($bind(this,this._onRequestAnimationFrame));

samples/_output/hx-pixi-bunnymark.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,8 @@ pixi.Application.prototype = {
2525
this.resize = true;
2626
this._skipFrame = false;
2727
}
28-
,start: function() {
28+
,start: function(renderer) {
29+
if(renderer == null) renderer = "auto";
2930
var _this = window.document;
3031
this._canvas = _this.createElement("canvas");
3132
this._canvas.style.width = this.width + "px";
@@ -36,7 +37,7 @@ pixi.Application.prototype = {
3637
var renderingOptions = { };
3738
renderingOptions.view = this._canvas;
3839
renderingOptions.resolution = this.pixelRatio;
39-
this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions);
40+
if(renderer == "auto") this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions); else if(renderer == "recommended") this._renderer = PIXI.autoDetectRecommendedRenderer(this.width,this.height,renderingOptions); else if(renderer == "canvas") this._renderer = new PIXI.CanvasRenderer(this.width,this.height,renderingOptions); else this._renderer = new PIXI.WebGLRenderer(this.width,this.height,renderingOptions);
4041
window.document.body.appendChild(this._renderer.view);
4142
if(this.resize) window.onresize = $bind(this,this._onWindowResize);
4243
window.requestAnimationFrame($bind(this,this._onRequestAnimationFrame));

samples/_output/hx-pixi-colourmatrix.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ pixi.Application.prototype = {
2121
this.resize = true;
2222
this._skipFrame = false;
2323
}
24-
,start: function() {
24+
,start: function(renderer) {
25+
if(renderer == null) renderer = "auto";
2526
var _this = window.document;
2627
this._canvas = _this.createElement("canvas");
2728
this._canvas.style.width = this.width + "px";
@@ -32,7 +33,7 @@ pixi.Application.prototype = {
3233
var renderingOptions = { };
3334
renderingOptions.view = this._canvas;
3435
renderingOptions.resolution = this.pixelRatio;
35-
this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions);
36+
if(renderer == "auto") this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions); else if(renderer == "recommended") this._renderer = PIXI.autoDetectRecommendedRenderer(this.width,this.height,renderingOptions); else if(renderer == "canvas") this._renderer = new PIXI.CanvasRenderer(this.width,this.height,renderingOptions); else this._renderer = new PIXI.WebGLRenderer(this.width,this.height,renderingOptions);
3637
window.document.body.appendChild(this._renderer.view);
3738
if(this.resize) window.onresize = $bind(this,this._onWindowResize);
3839
window.requestAnimationFrame($bind(this,this._onRequestAnimationFrame));

samples/_output/hx-pixi-graphics.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,8 @@ pixi.Application.prototype = {
2525
this.resize = true;
2626
this._skipFrame = false;
2727
}
28-
,start: function() {
28+
,start: function(renderer) {
29+
if(renderer == null) renderer = "auto";
2930
var _this = window.document;
3031
this._canvas = _this.createElement("canvas");
3132
this._canvas.style.width = this.width + "px";
@@ -36,7 +37,7 @@ pixi.Application.prototype = {
3637
var renderingOptions = { };
3738
renderingOptions.view = this._canvas;
3839
renderingOptions.resolution = this.pixelRatio;
39-
this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions);
40+
if(renderer == "auto") this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions); else if(renderer == "recommended") this._renderer = PIXI.autoDetectRecommendedRenderer(this.width,this.height,renderingOptions); else if(renderer == "canvas") this._renderer = new PIXI.CanvasRenderer(this.width,this.height,renderingOptions); else this._renderer = new PIXI.WebGLRenderer(this.width,this.height,renderingOptions);
4041
window.document.body.appendChild(this._renderer.view);
4142
if(this.resize) window.onresize = $bind(this,this._onWindowResize);
4243
window.requestAnimationFrame($bind(this,this._onRequestAnimationFrame));

samples/_output/hx-pixi-movieclip.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,8 @@ pixi.Application.prototype = {
2525
this.resize = true;
2626
this._skipFrame = false;
2727
}
28-
,start: function() {
28+
,start: function(renderer) {
29+
if(renderer == null) renderer = "auto";
2930
var _this = window.document;
3031
this._canvas = _this.createElement("canvas");
3132
this._canvas.style.width = this.width + "px";
@@ -36,7 +37,7 @@ pixi.Application.prototype = {
3637
var renderingOptions = { };
3738
renderingOptions.view = this._canvas;
3839
renderingOptions.resolution = this.pixelRatio;
39-
this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions);
40+
if(renderer == "auto") this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions); else if(renderer == "recommended") this._renderer = PIXI.autoDetectRecommendedRenderer(this.width,this.height,renderingOptions); else if(renderer == "canvas") this._renderer = new PIXI.CanvasRenderer(this.width,this.height,renderingOptions); else this._renderer = new PIXI.WebGLRenderer(this.width,this.height,renderingOptions);
4041
window.document.body.appendChild(this._renderer.view);
4142
if(this.resize) window.onresize = $bind(this,this._onWindowResize);
4243
window.requestAnimationFrame($bind(this,this._onRequestAnimationFrame));

samples/_output/hx-pixi-nape.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3382,7 +3382,8 @@ pixi.Application.prototype = {
33823382
this.resize = true;
33833383
this._skipFrame = false;
33843384
}
3385-
,start: function() {
3385+
,start: function(renderer) {
3386+
if(renderer == null) renderer = "auto";
33863387
var _this = window.document;
33873388
this._canvas = _this.createElement("canvas");
33883389
this._canvas.style.width = this.width + "px";
@@ -3393,7 +3394,7 @@ pixi.Application.prototype = {
33933394
var renderingOptions = { };
33943395
renderingOptions.view = this._canvas;
33953396
renderingOptions.resolution = this.pixelRatio;
3396-
this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions);
3397+
if(renderer == "auto") this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions); else if(renderer == "recommended") this._renderer = PIXI.autoDetectRecommendedRenderer(this.width,this.height,renderingOptions); else if(renderer == "canvas") this._renderer = new PIXI.CanvasRenderer(this.width,this.height,renderingOptions); else this._renderer = new PIXI.WebGLRenderer(this.width,this.height,renderingOptions);
33973398
window.document.body.appendChild(this._renderer.view);
33983399
if(this.resize) window.onresize = $bind(this,this._onWindowResize);
33993400
window.requestAnimationFrame($bind(this,this._onRequestAnimationFrame));

samples/_output/hx-pixi-particles.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@ pixi.Application.prototype = {
3030
this.resize = true;
3131
this._skipFrame = false;
3232
}
33-
,start: function() {
33+
,start: function(renderer) {
34+
if(renderer == null) renderer = "auto";
3435
var _this = window.document;
3536
this._canvas = _this.createElement("canvas");
3637
this._canvas.style.width = this.width + "px";
@@ -41,7 +42,7 @@ pixi.Application.prototype = {
4142
var renderingOptions = { };
4243
renderingOptions.view = this._canvas;
4344
renderingOptions.resolution = this.pixelRatio;
44-
this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions);
45+
if(renderer == "auto") this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions); else if(renderer == "recommended") this._renderer = PIXI.autoDetectRecommendedRenderer(this.width,this.height,renderingOptions); else if(renderer == "canvas") this._renderer = new PIXI.CanvasRenderer(this.width,this.height,renderingOptions); else this._renderer = new PIXI.WebGLRenderer(this.width,this.height,renderingOptions);
4546
window.document.body.appendChild(this._renderer.view);
4647
if(this.resize) window.onresize = $bind(this,this._onWindowResize);
4748
window.requestAnimationFrame($bind(this,this._onRequestAnimationFrame));

samples/_output/hx-pixi-pixidude.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ pixi.Application.prototype = {
2121
this.resize = true;
2222
this._skipFrame = false;
2323
}
24-
,start: function() {
24+
,start: function(renderer) {
25+
if(renderer == null) renderer = "auto";
2526
var _this = window.document;
2627
this._canvas = _this.createElement("canvas");
2728
this._canvas.style.width = this.width + "px";
@@ -32,7 +33,7 @@ pixi.Application.prototype = {
3233
var renderingOptions = { };
3334
renderingOptions.view = this._canvas;
3435
renderingOptions.resolution = this.pixelRatio;
35-
this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions);
36+
if(renderer == "auto") this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions); else if(renderer == "recommended") this._renderer = PIXI.autoDetectRecommendedRenderer(this.width,this.height,renderingOptions); else if(renderer == "canvas") this._renderer = new PIXI.CanvasRenderer(this.width,this.height,renderingOptions); else this._renderer = new PIXI.WebGLRenderer(this.width,this.height,renderingOptions);
3637
window.document.body.appendChild(this._renderer.view);
3738
if(this.resize) window.onresize = $bind(this,this._onWindowResize);
3839
window.requestAnimationFrame($bind(this,this._onRequestAnimationFrame));

samples/_output/hx-pixi-rendertexture.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ pixi.Application.prototype = {
2121
this.resize = true;
2222
this._skipFrame = false;
2323
}
24-
,start: function() {
24+
,start: function(renderer) {
25+
if(renderer == null) renderer = "auto";
2526
var _this = window.document;
2627
this._canvas = _this.createElement("canvas");
2728
this._canvas.style.width = this.width + "px";
@@ -32,7 +33,7 @@ pixi.Application.prototype = {
3233
var renderingOptions = { };
3334
renderingOptions.view = this._canvas;
3435
renderingOptions.resolution = this.pixelRatio;
35-
this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions);
36+
if(renderer == "auto") this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions); else if(renderer == "recommended") this._renderer = PIXI.autoDetectRecommendedRenderer(this.width,this.height,renderingOptions); else if(renderer == "canvas") this._renderer = new PIXI.CanvasRenderer(this.width,this.height,renderingOptions); else this._renderer = new PIXI.WebGLRenderer(this.width,this.height,renderingOptions);
3637
window.document.body.appendChild(this._renderer.view);
3738
if(this.resize) window.onresize = $bind(this,this._onWindowResize);
3839
window.requestAnimationFrame($bind(this,this._onRequestAnimationFrame));

samples/_output/hx-pixi-snake.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ pixi.Application.prototype = {
2121
this.resize = true;
2222
this._skipFrame = false;
2323
}
24-
,start: function() {
24+
,start: function(renderer) {
25+
if(renderer == null) renderer = "auto";
2526
var _this = window.document;
2627
this._canvas = _this.createElement("canvas");
2728
this._canvas.style.width = this.width + "px";
@@ -32,7 +33,7 @@ pixi.Application.prototype = {
3233
var renderingOptions = { };
3334
renderingOptions.view = this._canvas;
3435
renderingOptions.resolution = this.pixelRatio;
35-
this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions);
36+
if(renderer == "auto") this._renderer = PIXI.autoDetectRenderer(this.width,this.height,renderingOptions); else if(renderer == "recommended") this._renderer = PIXI.autoDetectRecommendedRenderer(this.width,this.height,renderingOptions); else if(renderer == "canvas") this._renderer = new PIXI.CanvasRenderer(this.width,this.height,renderingOptions); else this._renderer = new PIXI.WebGLRenderer(this.width,this.height,renderingOptions);
3637
window.document.body.appendChild(this._renderer.view);
3738
if(this.resize) window.onresize = $bind(this,this._onWindowResize);
3839
window.requestAnimationFrame($bind(this,this._onRequestAnimationFrame));

0 commit comments

Comments
 (0)