Skip to content

Commit 2c9a53d

Browse files
committed
WebGL specific GameObjects are now only included if the WEBGL build flag is set.
1 parent ae13ac7 commit 2c9a53d

3 files changed

Lines changed: 80 additions & 62 deletions

File tree

v3/src/gameobjects/index.js

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,16 @@
11
// Phaser.GameObjects
22

3-
module.exports = {
3+
var GameObjects = {
44

55
Components: require('./components'),
66

77
BitmapText: require('./bitmaptext/static/BitmapText'),
88
Blitter: require('./blitter/Blitter'),
99
DynamicBitmapText: require('./bitmaptext/dynamic/DynamicBitmapText'),
10-
EffectLayer: require('./effectlayer/EffectLayer'),
11-
LightLayer: require('./lightlayer/LightLayer'),
1210
Graphics: require('./graphics/Graphics.js'),
1311
Group: require('./group/Group'),
1412
Image: require('./image/Image'),
15-
Mesh: require('./mesh/Mesh'),
1613
ObjectPool: require('./pool/ObjectPool.js'),
17-
Quad: require('./quad/Quad'),
18-
RenderPass: require('./renderpass/RenderPass.js'),
1914
Sprite: require('./sprite/Sprite'),
2015
StaticTilemap: require('./tilemap/static/StaticTilemap'),
2116
Text: require('./text/static/Text'),
@@ -24,3 +19,14 @@ module.exports = {
2419
Zone: require('./zone/Zone')
2520

2621
};
22+
23+
if (WEBGL_RENDERER)
24+
{
25+
GameObjects.EffectLayer = require('./effectlayer/EffectLayer');
26+
GameObjects.LightLayer = require('./lightlayer/LightLayer');
27+
GameObjects.Mesh = require('./mesh/Mesh');
28+
GameObjects.Quad = require('./quad/Quad');
29+
GameObjects.RenderPass = require('./renderpass/RenderPass.js');
30+
}
31+
32+
module.exports = GameObjects;

v3/src/scene/plugins/GameObjectCreator.js

Lines changed: 32 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,16 @@ var BlitterCreator = require('../../gameobjects/blitter/BlitterCreator');
22
var Class = require('../../utils/Class');
33
var DynamicBitmapTextCreator = require('../../gameobjects/bitmaptext/dynamic/DynamicBitmapTextCreator');
44
var DynamicTilemapCreator = require('../../gameobjects/tilemap/dynamic/TilemapCreator');
5-
var EffectLayerCreator = require('../../gameobjects/effectlayer/EffectLayerCreator');
65
var GraphicsCreator = require('../../gameobjects/graphics/GraphicsCreator');
76
var GroupCreator = require('../../gameobjects/group/GroupCreator');
87
var ImageCreator = require('../../gameobjects/image/ImageCreator');
9-
var MeshCreator = require('../../gameobjects/mesh/MeshCreator');
10-
var QuadCreator = require('../../gameobjects/quad/QuadCreator');
11-
var RenderPassCreator = require('../../gameobjects/renderpass/RenderPassCreator');
128
var SpriteCreator = require('../../gameobjects/sprite/SpriteCreator');
139
var StaticBitmapTextCreator = require('../../gameobjects/bitmaptext/static/BitmapTextCreator');
1410
var StaticTilemapCreator = require('../../gameobjects/tilemap/static/StaticTilemapCreator');
1511
var TextCreator = require('../../gameobjects/text/static/TextCreator');
1612
var TileSpriteCreator = require('../../gameobjects/tilesprite/TileSpriteCreator');
1713

18-
var GameObjectCreator = new Class({
14+
var factoryDef = {
1915

2016
initialize:
2117

@@ -39,11 +35,6 @@ var GameObjectCreator = new Class({
3935
return BlitterCreator(this.scene, config);
4036
},
4137

42-
effectLayer: function (config)
43-
{
44-
return EffectLayerCreator(this.scene, config);
45-
},
46-
4738
graphics: function (config)
4839
{
4940
return GraphicsCreator(this.scene, config);
@@ -54,26 +45,11 @@ var GameObjectCreator = new Class({
5445
return GroupCreator(this.scene, config);
5546
},
5647

57-
mesh: function (config)
58-
{
59-
return MeshCreator(this.scene, config);
60-
},
61-
6248
image: function (config)
6349
{
6450
return ImageCreator(this.scene, config);
6551
},
6652

67-
quad: function (config)
68-
{
69-
return QuadCreator(this.scene, config);
70-
},
71-
72-
renderPass: function (config)
73-
{
74-
return RenderPassCreator(this.scene, config);
75-
},
76-
7753
sprite: function (config)
7854
{
7955
return SpriteCreator(this.scene, config);
@@ -103,7 +79,37 @@ var GameObjectCreator = new Class({
10379
{
10480
return this.scene.sys.tweens.create(config);
10581
}
82+
};
83+
84+
if (WEBGL_RENDERER)
85+
{
86+
// WebGL only Game Objects
87+
var EffectLayerCreator = require('../../gameobjects/effectlayer/EffectLayerCreator');
88+
var MeshCreator = require('../../gameobjects/mesh/MeshCreator');
89+
var QuadCreator = require('../../gameobjects/quad/QuadCreator');
90+
var RenderPassCreator = require('../../gameobjects/renderpass/RenderPassCreator');
91+
92+
factoryDef.effectLayer = function (config)
93+
{
94+
return EffectLayerCreator(this.scene, config);
95+
};
96+
97+
factoryDef.mesh = function (config)
98+
{
99+
return MeshCreator(this.scene, config);
100+
};
101+
102+
factoryDef.quad = function (config)
103+
{
104+
return QuadCreator(this.scene, config);
105+
};
106+
107+
factoryDef.renderPass = function (config)
108+
{
109+
return RenderPassCreator(this.scene, config);
110+
};
111+
}
106112

107-
});
113+
var GameObjectCreator = new Class(factoryDef);
108114

109115
module.exports = GameObjectCreator;

v3/src/scene/plugins/GameObjectFactory.js

Lines changed: 36 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,17 @@ var BlitterFactory = require('../../gameobjects/blitter/BlitterFactory');
22
var Class = require('../../utils/Class');
33
var DynamicBitmapTextFactory = require('../../gameobjects/bitmaptext/dynamic/DynamicBitmapTextFactory');
44
var DynamicTilemapFactory = require('../../gameobjects/tilemap/dynamic/TilemapFactory');
5-
var EffectLayerFactory = require('../../gameobjects/effectlayer/EffectLayerFactory');
65
var GraphicsFactory = require('../../gameobjects/graphics/GraphicsFactory');
76
var GroupFactory = require('../../gameobjects/group/GroupFactory');
87
var ImageFactory = require('../../gameobjects/image/ImageFactory');
9-
var LightLayerFactory = require('../../gameobjects/lightlayer/LightLayerFactory');
10-
var MeshFactory = require('../../gameobjects/mesh/MeshFactory');
11-
var QuadFactory = require('../../gameobjects/quad/QuadFactory');
12-
var RenderPassFactory = require('../../gameobjects/renderpass/RenderPassFactory');
138
var SpriteFactory = require('../../gameobjects/sprite/SpriteFactory');
149
var StaticBitmapTextFactory = require('../../gameobjects/bitmaptext/static/BitmapTextFactory');
1510
var StaticTilemapFactory = require('../../gameobjects/tilemap/static/StaticTilemapFactory');
1611
var TextFactory = require('../../gameobjects/text/static/TextFactory');
1712
var TileSpriteFactory = require('../../gameobjects/tilesprite/TileSpriteFactory');
1813
var ZoneFactory = require('../../gameobjects/zone/ZoneFactory');
1914

20-
var GameObjectFactory = new Class({
15+
var factoryDef = {
2116

2217
initialize:
2318

@@ -65,11 +60,6 @@ var GameObjectFactory = new Class({
6560
return this.displayList.add(BlitterFactory(this.scene, x, y, key, frame));
6661
},
6762

68-
effectLayer: function (x, y, width, height, effectName, fragmentShader)
69-
{
70-
return this.displayList.add(EffectLayerFactory(this.scene, x, y, width, height, effectName, fragmentShader));
71-
},
72-
7363
graphics: function (config)
7464
{
7565
return this.displayList.add(GraphicsFactory(this.scene, config));
@@ -85,21 +75,6 @@ var GameObjectFactory = new Class({
8575
return this.displayList.add(ImageFactory(this.scene, x, y, key, frame));
8676
},
8777

88-
mesh: function (x, y, vertices, uv, key, frame)
89-
{
90-
return this.displayList.add(MeshFactory(this.scene, x, y, vertices, uv, key, frame));
91-
},
92-
93-
quad: function (x, y, key, frame)
94-
{
95-
return this.displayList.add(QuadFactory(this.scene, x, y, key, frame));
96-
},
97-
98-
renderPass: function (x, y, width, height, shaderName, fragmentShader)
99-
{
100-
return this.displayList.add(RenderPassFactory(this.scene, x, y, width, height, shaderName, fragmentShader));
101-
},
102-
10378
sprite: function (x, y, key, frame)
10479
{
10580
var sprite = SpriteFactory(this.scene, x, y, key, frame);
@@ -138,13 +113,44 @@ var GameObjectFactory = new Class({
138113
tween: function (config)
139114
{
140115
return this.scene.sys.tweens.add(config);
141-
},
116+
}
117+
};
118+
119+
if (WEBGL_RENDERER)
120+
{
121+
// WebGL only Game Objects
122+
var EffectLayerFactory = require('../../gameobjects/effectlayer/EffectLayerFactory');
123+
var LightLayerFactory = require('../../gameobjects/lightlayer/LightLayerFactory');
124+
var MeshFactory = require('../../gameobjects/mesh/MeshFactory');
125+
var QuadFactory = require('../../gameobjects/quad/QuadFactory');
126+
var RenderPassFactory = require('../../gameobjects/renderpass/RenderPassFactory');
127+
128+
factoryDef.effectLayer = function (x, y, width, height, effectName, fragmentShader)
129+
{
130+
return this.displayList.add(EffectLayerFactory(this.scene, x, y, width, height, effectName, fragmentShader));
131+
};
142132

143-
lightLayer: function ()
133+
factoryDef.lightLayer = function ()
144134
{
145135
return this.displayList.add(LightLayerFactory(this.scene));
146-
}
136+
};
137+
138+
factoryDef.mesh = function (x, y, vertices, uv, key, frame)
139+
{
140+
return this.displayList.add(MeshFactory(this.scene, x, y, vertices, uv, key, frame));
141+
};
142+
143+
factoryDef.quad = function (x, y, key, frame)
144+
{
145+
return this.displayList.add(QuadFactory(this.scene, x, y, key, frame));
146+
};
147+
148+
factoryDef.renderPass = function (x, y, width, height, shaderName, fragmentShader)
149+
{
150+
return this.displayList.add(RenderPassFactory(this.scene, x, y, width, height, shaderName, fragmentShader));
151+
};
152+
}
147153

148-
});
154+
var GameObjectFactory = new Class(factoryDef);
149155

150156
module.exports = GameObjectFactory;

0 commit comments

Comments
 (0)