diff --git a/src/extras/TilingSprite.js b/src/extras/TilingSprite.js index a8bcfba..3393cd2 100644 --- a/src/extras/TilingSprite.js +++ b/src/extras/TilingSprite.js @@ -70,6 +70,14 @@ * @default 'tilingSprite' */ this.pluginName = 'tilingSprite'; + + /** + * Whether or not anchor affects uvs + * + * @member {boolean} + * @default false + */ + this.uvRespectAnchor = false; } /** * Changes frame clamping in corresponding textureTransform, shortcut diff --git a/src/extras/TilingSprite.js b/src/extras/TilingSprite.js index a8bcfba..3393cd2 100644 --- a/src/extras/TilingSprite.js +++ b/src/extras/TilingSprite.js @@ -70,6 +70,14 @@ * @default 'tilingSprite' */ this.pluginName = 'tilingSprite'; + + /** + * Whether or not anchor affects uvs + * + * @member {boolean} + * @default false + */ + this.uvRespectAnchor = false; } /** * Changes frame clamping in corresponding textureTransform, shortcut diff --git a/src/extras/webgl/TilingSpriteRenderer.js b/src/extras/webgl/TilingSpriteRenderer.js index 8bad0c4..5ea46af 100644 --- a/src/extras/webgl/TilingSpriteRenderer.js +++ b/src/extras/webgl/TilingSpriteRenderer.js @@ -65,13 +65,16 @@ vertices[2] = vertices[4] = (ts._width) * (1.0 - ts.anchor.x); vertices[5] = vertices[7] = ts._height * (1.0 - ts.anchor.y); - vertices = quad.uvs; + if (ts.uvRespectAnchor) + { + vertices = quad.uvs; - vertices[0] = vertices[6] = -ts.anchor.x; - vertices[1] = vertices[3] = -ts.anchor.y; + vertices[0] = vertices[6] = -ts.anchor.x; + vertices[1] = vertices[3] = -ts.anchor.y; - vertices[2] = vertices[4] = 1.0 - ts.anchor.x; - vertices[5] = vertices[7] = 1.0 - ts.anchor.y; + vertices[2] = vertices[4] = 1.0 - ts.anchor.x; + vertices[5] = vertices[7] = 1.0 - ts.anchor.y; + } quad.upload();