Texture cache collision (assets incorrectly shared) #312
When having multiple Spine objects in the Pixi stage that each contain separate assets, they have texture cache conflicts with said assets that share the same names in their skin/JSON hash file.
Here is a simple example I made using the AssetLoader, to show this issue:
This contains two cannons made in Spine that are purposely in separate files.
Technically their assets shouldn't clash in the cache.
When loading this example, it has a random occurrence of either showing the two cannons correctly with their different textures, or randomly showing two cannons that look the same (aka duplicating assets between them for no reason).
My solution to this issue was to give all my spine skins heavily unique image names such as:
After further investigation, this may not be a problem with the bone names...but instead the image names in Spine skins and JSON hash files.
Cheers for mentioning that englercj, yes I am currently using the regular AssetLoader.
If you'd like to see all of the tests I've done so far, including my fixed cannons and their resources, you can download them all here:
I've updated the issue to explain this correctly, and cleaned up my wall of text :)
Hi Mat! This issue still appears to be occurring with the latest Pixi.js release.
I've tested this with the latest builds for both the Master and Dev branch (most recently compiled 2014-02-08), using the assets example linked in my first post.
I think another test that could confirm if this bug still exists is using multiple different BitmapFonts simultaneously.
Actually I'm working on a project which involves sharing assets between Flash and HTML5 client, so i've a fixed naming convention already applied, which is like:
if(gameN/spritesheets/buttons.png exists i use that with frames (0.png,1.png), if not i fall back to common sheet ..
referenced this issue
Jul 15, 2014
I use pixi.js v4.5.2, I have a lot of spritesheets containing sequences of frames with names 001.png, 002.png ... etc, and I have a lot of warnings in my console which looks like this: