diff --git a/src/pixi/extras/PIXISpine.js b/src/pixi/extras/PIXISpine.js index 9b8d8ff..c84e221 100644 --- a/src/pixi/extras/PIXISpine.js +++ b/src/pixi/extras/PIXISpine.js @@ -297,7 +297,7 @@ var strip = new PIXI.Strip(texture); strip.drawMode = PIXI.Strip.DrawModes.TRIANGLES; - strip.padding = 5; + strip.canvasPadding = 1.5; strip.vertices = new PIXI.Float32Array(attachment.uvs.length); strip.uvs = attachment.uvs; diff --git a/src/pixi/extras/PIXISpine.js b/src/pixi/extras/PIXISpine.js index 9b8d8ff..c84e221 100644 --- a/src/pixi/extras/PIXISpine.js +++ b/src/pixi/extras/PIXISpine.js @@ -297,7 +297,7 @@ var strip = new PIXI.Strip(texture); strip.drawMode = PIXI.Strip.DrawModes.TRIANGLES; - strip.padding = 5; + strip.canvasPadding = 1.5; strip.vertices = new PIXI.Float32Array(attachment.uvs.length); strip.uvs = attachment.uvs; diff --git a/src/pixi/extras/Spine.js b/src/pixi/extras/Spine.js index 87084b7..06ce610 100644 --- a/src/pixi/extras/Spine.js +++ b/src/pixi/extras/Spine.js @@ -2423,7 +2423,7 @@ }; spine.AtlasAttachmentLoader.prototype = { newRegionAttachment: function (skin, name, path) { - var region = this.atlas.findRegion(name); + var region = this.atlas.findRegion(path); if (!region) throw "Region not found in atlas: " + path + " (region attachment: " + name + ")"; var attachment = new spine.RegionAttachment(name); attachment.rendererObject = region; @@ -2437,7 +2437,7 @@ return attachment; }, newMeshAttachment: function (skin, name, path) { - var region = this.atlas.findRegion(name); + var region = this.atlas.findRegion(path); if (!region) throw "Region not found in atlas: " + path + " (mesh attachment: " + name + ")"; var attachment = new spine.MeshAttachment(name); attachment.rendererObject = region; @@ -2455,7 +2455,7 @@ return attachment; }, newSkinnedMeshAttachment: function (skin, name, path) { - var region = this.atlas.findRegion(name); + var region = this.atlas.findRegion(path); if (!region) throw "Region not found in atlas: " + path + " (skinned mesh attachment: " + name + ")"; var attachment = new spine.SkinnedMeshAttachment(name); attachment.rendererObject = region; diff --git a/src/pixi/extras/PIXISpine.js b/src/pixi/extras/PIXISpine.js index 9b8d8ff..c84e221 100644 --- a/src/pixi/extras/PIXISpine.js +++ b/src/pixi/extras/PIXISpine.js @@ -297,7 +297,7 @@ var strip = new PIXI.Strip(texture); strip.drawMode = PIXI.Strip.DrawModes.TRIANGLES; - strip.padding = 5; + strip.canvasPadding = 1.5; strip.vertices = new PIXI.Float32Array(attachment.uvs.length); strip.uvs = attachment.uvs; diff --git a/src/pixi/extras/Spine.js b/src/pixi/extras/Spine.js index 87084b7..06ce610 100644 --- a/src/pixi/extras/Spine.js +++ b/src/pixi/extras/Spine.js @@ -2423,7 +2423,7 @@ }; spine.AtlasAttachmentLoader.prototype = { newRegionAttachment: function (skin, name, path) { - var region = this.atlas.findRegion(name); + var region = this.atlas.findRegion(path); if (!region) throw "Region not found in atlas: " + path + " (region attachment: " + name + ")"; var attachment = new spine.RegionAttachment(name); attachment.rendererObject = region; @@ -2437,7 +2437,7 @@ return attachment; }, newMeshAttachment: function (skin, name, path) { - var region = this.atlas.findRegion(name); + var region = this.atlas.findRegion(path); if (!region) throw "Region not found in atlas: " + path + " (mesh attachment: " + name + ")"; var attachment = new spine.MeshAttachment(name); attachment.rendererObject = region; @@ -2455,7 +2455,7 @@ return attachment; }, newSkinnedMeshAttachment: function (skin, name, path) { - var region = this.atlas.findRegion(name); + var region = this.atlas.findRegion(path); if (!region) throw "Region not found in atlas: " + path + " (skinned mesh attachment: " + name + ")"; var attachment = new spine.SkinnedMeshAttachment(name); attachment.rendererObject = region; diff --git a/src/pixi/extras/Strip.js b/src/pixi/extras/Strip.js index 8870be8..6cff5df 100644 --- a/src/pixi/extras/Strip.js +++ b/src/pixi/extras/Strip.js @@ -58,13 +58,12 @@ this.blendMode = PIXI.blendModes.NORMAL; /** - * if you need a padding, not yet implemented + * Triangles in canvas mode are automatically antialiased, use this value to force triangles to overlap a bit with each other. * - * @property padding + * @property canvasPadding * @type Number */ - this.padding = 0; - // NYI, TODO padding ? + this.canvasPadding = 0; this.drawMode = PIXI.Strip.DrawModes.TRIANGLE_STRIP; @@ -278,8 +277,9 @@ var u0 = uvs[index0] * textureWidth, u1 = uvs[index1] * textureWidth, u2 = uvs[index2] * textureWidth; var v0 = uvs[index0 + 1] * textureHeight, v1 = uvs[index1 + 1] * textureHeight, v2 = uvs[index2 + 1] * textureHeight; - if (this.padding > 0) { - var padding = this.padding; + if (this.canvasPadding > 0) { + var paddingX = this.canvasPadding / this.worldTransform.a; + var paddingY = this.canvasPadding / this.worldTransform.d; var centerX = (x0 + x1 + x2) / 3; var centerY = (y0 + y1 + y2) / 3; @@ -287,8 +287,8 @@ var normY = y0 - centerY; var dist = Math.sqrt(normX * normX + normY * normY); - x0 = centerX + (normX / dist) * (dist + padding); - y0 = centerY + (normY / dist) * (dist + padding); + x0 = centerX + (normX / dist) * (dist + paddingX); + y0 = centerY + (normY / dist) * (dist + paddingY); // @@ -296,15 +296,15 @@ normY = y1 - centerY; dist = Math.sqrt(normX * normX + normY * normY); - x1 = centerX + (normX / dist) * (dist + padding); - y1 = centerY + (normY / dist) * (dist + padding); + x1 = centerX + (normX / dist) * (dist + paddingX); + y1 = centerY + (normY / dist) * (dist + paddingY); normX = x2 - centerX; normY = y2 - centerY; dist = Math.sqrt(normX * normX + normY * normY); - x2 = centerX + (normX / dist) * (dist + padding); - y2 = centerY + (normY / dist) * (dist + padding); + x2 = centerX + (normX / dist) * (dist + paddingX); + y2 = centerY + (normY / dist) * (dist + paddingY); } context.save();