I've filed a bug (#23844584) with a link to a sample project. (I tried to attach the project to the bug, but the upload keeps failing-- it's only a ~500k zip file 😕).
This is 100% reproducible with the configuration described. Any help is appreciated, either from Apple engineers or someone who has found a work-around for this.
Here's the text of the bug:
Summary:
Please see the attached sample project. Images in both "correct" and "bad" atlases are exactly the same size, but the "bad" images are stretched when applied. This has been observed in my project with any textures applied under the following circumstances:
1. Texture image has an alpha-channel buffer surrounding non-alpha pixels
2. Texture is built from Texture Atlas within an Asset Catalog
3. TextureAtlas has "provides namespace" set to true
4. Textures are applied by an animateWithTextures SKAction created in the action editor and saved in an .sks file.
Steps to Reproduce:
1. Run App
2. Select "Good Texture Sizing" then tap screen to add correctly textured sprite
3. Select "Bad Texture Sizing" and tap screen to add incorrectly textured sprite.
4. Notice the difference.
Expected Results:
source images are identical in all respects except for solid background vs alpha background. Textures should be rendered at the same size.
Actual Results:
Textures with alpha background are "trimmed" and then non-alpha pixels are "stretched" to fit sprite size.
Version:
iOS 9.2, Xcode 7.2 Notes:
Configuration:
tested on iPhone 6s & simulators
And the sample project: http://hungrymelon.com/BadAtlas.zip.