Android Open Source - X3n0break Sprite Loader From Project Back to project page X3n0break .
License The source code is released under:
GNU General Public License
If you think the Android project X3n0break listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code package org.x3n0m0rph59.breakout;
/ / w w w . j a v a 2 s . c o m
import java.util.HashMap;
import java.util.Map;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.assets.AssetManager;
import com.badlogic.gdx.assets.loaders.TextureLoader.TextureParameter;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.Texture.TextureFilter;
import com.badlogic.gdx.graphics.g2d.Sprite;
public final class SpriteLoader {
private static final SpriteLoader instance = new SpriteLoader();
private final Map<String, Sprite> map = new HashMap<String, Sprite>();
private final AssetManager assetManager;
public SpriteLoader() {
assetManager = new AssetManager();
Texture.setAssetManager(assetManager);
primeCache();
}
public static SpriteLoader getInstance() {
return instance;
}
public Sprite getSprite(String filename, int tw, int th) {
Sprite sprite;
if ((sprite = getSpriteFromCache(filename)) == null) {
final TextureParameter param = new TextureParameter();
param.minFilter = TextureFilter.Linear;
param.genMipMaps = true;
assetManager.load(filename, Texture.class, param);
assetManager.finishLoading();
final Texture t = assetManager.get(filename);
sprite = new Sprite(t, tw, th);
sprite.flip(false, true);
// sprite.rotate90(true);
addSpriteToCache(filename, sprite);
Logger.debug("# managed textures: " + Texture.getNumManagedTextures());
return sprite;
}
else {
return sprite;
}
}
private void addSpriteToCache(String filename, Sprite sprite) {
map.put(filename, sprite);
}
private Sprite getSpriteFromCache(String filename) {
return map.get(filename);
}
private void primeCache() {
}
public void dispose() {
for (final Sprite s : map.values()) {
s.getTexture().dispose();
// map.remove(s);
}
// map.clear();
}
public void resumeAssets() {
Logger.debug("Reloading managed textures" );
Logger.debug("# managed textures: " + Texture.getNumManagedTextures());
Texture.invalidateAllTextures(Gdx.app);
assetManager.update();
assetManager.finishLoading();
}
}
Java Source Code List org.x3n0m0rph59.breakout.App.java org.x3n0m0rph59.breakout.BackgroundFactory.java org.x3n0m0rph59.breakout.Background.java org.x3n0m0rph59.breakout.Ball.java org.x3n0m0rph59.breakout.BottomWall.java org.x3n0m0rph59.breakout.Brick.java org.x3n0m0rph59.breakout.Config.java org.x3n0m0rph59.breakout.Destroyable.java org.x3n0m0rph59.breakout.EffectManager.java org.x3n0m0rph59.breakout.Effect.java org.x3n0m0rph59.breakout.FontLoader.java org.x3n0m0rph59.breakout.FontTuple.java org.x3n0m0rph59.breakout.ForceFeedback.java org.x3n0m0rph59.breakout.GameInputProcessor.java org.x3n0m0rph59.breakout.GameObject.java org.x3n0m0rph59.breakout.GameScreen.java org.x3n0m0rph59.breakout.GameState.java org.x3n0m0rph59.breakout.GrapplingHookSegment.java org.x3n0m0rph59.breakout.GrapplingHook.java org.x3n0m0rph59.breakout.HelpInputProcessor.java org.x3n0m0rph59.breakout.HelpScreen.java org.x3n0m0rph59.breakout.HighScoreManager.java org.x3n0m0rph59.breakout.HighScoreScreen.java org.x3n0m0rph59.breakout.HighScore.java org.x3n0m0rph59.breakout.HighscoreInputProcessor.java org.x3n0m0rph59.breakout.IOSLauncher.java org.x3n0m0rph59.breakout.LevelLoader.java org.x3n0m0rph59.breakout.LevelSetSelectorInputProcessor.java org.x3n0m0rph59.breakout.LevelSetSelectorScreen.java org.x3n0m0rph59.breakout.Logger.java org.x3n0m0rph59.breakout.MenuInputProcessor.java org.x3n0m0rph59.breakout.MenuScreen.java org.x3n0m0rph59.breakout.MusicLoader.java org.x3n0m0rph59.breakout.MusicStream.java org.x3n0m0rph59.breakout.ObjectPool.java org.x3n0m0rph59.breakout.Paddle.java org.x3n0m0rph59.breakout.ParticleSystem.java org.x3n0m0rph59.breakout.Particle.java org.x3n0m0rph59.breakout.Point.java org.x3n0m0rph59.breakout.Poolable.java org.x3n0m0rph59.breakout.Powerup.java org.x3n0m0rph59.breakout.Projectile.java org.x3n0m0rph59.breakout.Renderable.java org.x3n0m0rph59.breakout.ResourceMapperDecisionCache.java org.x3n0m0rph59.breakout.ResourceMapper.java org.x3n0m0rph59.breakout.ScoreBoard.java org.x3n0m0rph59.breakout.ScreenManager.java org.x3n0m0rph59.breakout.ScreenType.java org.x3n0m0rph59.breakout.SettingsInputProcessor.java org.x3n0m0rph59.breakout.SettingsScreen.java org.x3n0m0rph59.breakout.SoundLayer.java org.x3n0m0rph59.breakout.SoundLoader.java org.x3n0m0rph59.breakout.SoundSprite.java org.x3n0m0rph59.breakout.SpaceBomb.java org.x3n0m0rph59.breakout.SpriteLoader.java org.x3n0m0rph59.breakout.SpriteObject.java org.x3n0m0rph59.breakout.SpriteTuple.java org.x3n0m0rph59.breakout.Star.java org.x3n0m0rph59.breakout.Stepable.java org.x3n0m0rph59.breakout.TextAnimationManager.java org.x3n0m0rph59.breakout.TextAnimation.java org.x3n0m0rph59.breakout.Util.java org.x3n0m0rph59.breakout.Vector.java org.x3n0m0rph59.breakout.android.AndroidLauncher.java org.x3n0m0rph59.breakout.client.HtmlLauncher.java org.x3n0m0rph59.breakout.desktop.DesktopLauncher.java