openFrameworks Addon for SpriteSheets and Animated Sprites generated from TexturePacker
Branches ahead of master
These branches have commits not yet on master — could be unmerged fixes or work in progress worth a look.
README
ofxTexturePacker
OpenFrameworks addon for loading and rendering sprites and animated sprites generated from CodeAndWeb's TexturePacker application.
What is TexturePacker?
- Allows quick creation of sprite sheets with reference name of the original image
- Optimises rendering speed and memory usage of an App or Game
- Mutli-OS (OSX,Linux,Windows)
- Supports generating sprite sheets for different targets automatically (i.e. retina and non-retina)
Get Texture Packer (has free to use version) http://www.codeandweb.com/texturepacker
What this addon does?
- This addon loads the exported TexturePacker texture and format into a usable data structure for c++ and openFrameworks.
What export settings do I use in TexturePacker Application?
- Currently use "Generic XML"
- May look into getting openFrameworks offically supported and have our own defined XML format.
Why use this addon?
- Easy intergration.
- Saves memory
- Optimises rendering
- Supports animation
How to refactor an ofImage into ofxTPSprite:
// Turn:
ofImage normal = new ofImage();
normal.loadImage("images/normal.png");
// Into:
ofxTPSprite normal = texturePacker.getSprite("images/normal.png");
How to load an animated sprite
ofxTexturePackerPtr texturepacker;
ofxTPAnimatedSpritePtr spaceship_sprite;
texturepacker = ofxTexturePackerPtr(new ofxTexturePacker());
texturepacker->load("spaceship/spaceship.xml");
spaceship_sprite = texturepacker->getAnimatedSprite("spaceship");
spaceship_sprite->play();Don't forget to
update() your sprite.Notes
ofxTexturePacker loads the png image designated by the xml file using a path relative to the xml file's location. getAnimationNames requires that you name your sprites with a common prefix
- disable trimming if you set the pivot
Still a work in progress. Will be maintained.
ofxAddons