Skip to content

Commit 4b7330f

Browse files
committed
TextureSource creates glTexture if required.
1 parent 339ea0b commit 4b7330f

3 files changed

Lines changed: 33 additions & 4 deletions

File tree

v3/src/checksum.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
var CHECKSUM = {
2-
build: 'ffd962c0-df3b-11e6-9dea-914dbb3db0ce'
2+
build: '00ecb540-df41-11e6-b2ab-cb300d8fb61b'
33
};
44
module.exports = CHECKSUM;
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
var ScaleModes = require('../../../ScaleModes');
2+
var CreateTexture2DImage = require('./CreateTexture2DImage');
3+
4+
var CreateTexture2DFromSource = function (gl, source)
5+
{
6+
var filter;
7+
8+
if (source.scaleMode === ScaleModes.LINEAR)
9+
{
10+
filter = gl.LINEAR;
11+
}
12+
else if (source.scaleMode === ScaleModes.NEAREST)
13+
{
14+
filter = gl.NEAREST;
15+
}
16+
17+
source.glTexture = CreateTexture2DImage(gl, source.image, filter, source.mipmapLevel)
18+
};
19+
20+
module.exports = CreateTexture2DFromSource;

v3/src/textures/TextureSource.js

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,10 @@
44
* @license {@link https://github.com/photonstorm/phaser/blob/master/license.txt|MIT License}
55
*/
66

7+
var CONST = require('../const');
78
var ScaleModes = require('../renderer/ScaleModes');
89
var IsSizePowerOfTwo = require('../math/pow2/IsSizePowerOfTwo');
10+
var CreateTexture2DFromSource = require('../renderer/webgl/utils/texture/CreateTexture2DFromSource');
911

1012
/**
1113
*
@@ -71,10 +73,10 @@ var TextureSource = function (texture, source)
7173
* Set this to true if a mipmap of this texture needs to be generated. This value needs to be set before the texture is used
7274
* Also the texture must be a power of two size to work
7375
*
74-
* @property mipmap
75-
* @type {Boolean}
76+
* @property mipmapLevel
77+
* @type {integer}
7678
*/
77-
this.mipmap = false;
79+
this.mipmapLevel = 0;
7880

7981
/**
8082
* A BaseTexture can be set to skip the rendering phase in the WebGL Sprite Batch.
@@ -117,6 +119,13 @@ var TextureSource = function (texture, source)
117119
* @property glDirty
118120
*/
119121
this.glDirty = true;
122+
123+
var game = texture.manager.game;
124+
125+
if (game.config.renderType === CONST.WEBGL)
126+
{
127+
CreateTexture2DFromSource(game.renderer.gl, this);
128+
}
120129
};
121130

122131
module.exports = TextureSource;

0 commit comments

Comments
 (0)