I’m working on a 2D platformer and have already built a bunch of tile-based levels, but now I want to leverage Sprite Shape to get more organic/curvy landscapes for “special” areas.
The problem is, I seem to have encountered a major bug with Sprite Shape in that won’t allow me to use any of the sprites in my current sprite sheet.
I’ve already:
- Created a Sprite Shape profile and assigned it one of the “terrain” sprites from my sheet
- Created an “Open Sprite Shape” game object and assigned it the profile in step #1
Everything looks fine and dandy in the editor–the Sprite Shape appears as it should and I’m able to edit the spline without any issues–but as soon as I launch the game the Sprite Shape goes invisible and I’m greeted with this nasty little error message in the console:
ArgumentException: tileset-1-separated_1 is packed with Tight packing or mesh type set to Tight. Please check input sprites
Seems simple, right? Based on that error message all I have to do is change my sprite sheet’s packing mode to Full Rect instead of Tight.
… except I already have changed it from Tight to Full Rect, and the problem still hasn’t been resolved.
But wait, it gets stranger:
Just for kicks I decided to import an EXACT COPY of the sprite sheet I’m using and chose Full Rect as the default import setting instead of Tight. I gave it the exact same settings as the original sheet I’d already been using, tried assigning one of its sprites to the Sprite Shape profile I created above, and… it worked! No error message, nothing. The Sprite Shape was there when I clicked play.
How is it possible that one sprite sheet works with Sprite Shape and one doesn’t, when they’re literally the exact same image/PNG file and I’ve cross-referenced them to ensure that they share the exact same settings? The only difference between the two is that the original was set to Tight when I first imported it, whereas I made sure to set the copy to Full Rect right off the bat.
Is it possible that if you choose Tight first (rather than Full Rect), then that setting somehow remains in place “behind the scenes” even if you later switch over to Full Rect? Because clearly, Sprite Shape seems to think that the original is still set to Tight when it is in fact NOT. Or is something else going on here?
Here are the settings for my original sprite sheet:
And these are the settings for the exact copy:
Do you see any difference between the two? Because I sure don’t–but apparently Sprite Shape does!
I would love to hear if anyone else has encountered this before, and if there’s some sort of fix. Since the exact copy works I understand that I could just switch over to it and ditch the original, but also understand that that would result in a whole lot of extra work since I’ve already used loads of sprites from the original sheet. It’d be fantastic if I could somehow resolve this so that I could just continue using my original sheet.