Example usage for com.badlogic.gdx.assets AssetDescriptor AssetDescriptor

List of usage examples for com.badlogic.gdx.assets AssetDescriptor AssetDescriptor

Introduction

In this page you can find the example usage for com.badlogic.gdx.assets AssetDescriptor AssetDescriptor.

Prototype

public AssetDescriptor(FileHandle file, Class<T> assetType, AssetLoaderParameters<T> params) 

Source Link

Document

Creates an AssetDescriptor with an already resolved name.

Usage

From source file:com.betmansmall.game.gameLogic.mapLoader.MapLoader.java

License:Apache License

/** Retrieves TiledMap resource dependencies
 *
 * @param fileName//from w ww  .  j a va2s .  c  om
 * @param parameter not used for now
 * @return dependencies for the given .tmx file */
@Override
public Array<AssetDescriptor> getDependencies(String fileName, FileHandle tmxFile, Parameters parameter) {
    Array<AssetDescriptor> dependencies = new Array<AssetDescriptor>();
    try {
        root = xml.parse(tmxFile);
        boolean generateMipMaps = (parameter != null ? parameter.generateMipMaps : false);
        TextureLoader.TextureParameter texParams = new TextureParameter();
        texParams.genMipMaps = generateMipMaps;
        if (parameter != null) {
            texParams.minFilter = parameter.textureMinFilter;
            texParams.magFilter = parameter.textureMagFilter;
        }
        for (FileHandle image : loadTilesets(root, tmxFile)) {
            dependencies.add(new AssetDescriptor(image, Texture.class, texParams));
        }
        for (FileHandle image : loadImages(root, tmxFile)) {
            dependencies.add(new AssetDescriptor(image, Texture.class, texParams));
        }
        return dependencies;
    } catch (IOException e) {
        throw new GdxRuntimeException("Couldn't load tilemap '" + fileName + "'", e);
    }
}

From source file:com.github.fauu.helix.core.MapRegionLoader.java

License:Open Source License

@Override
public Array<AssetDescriptor> getDependencies(String fileName, FileHandle hmrFile, Parameters parameters) {
    final Array<AssetDescriptor> dependencies = new Array();

    try {//w ww.j a  v a2  s  .  co m
        root = xml.parse(hmrFile);
        final XmlReader.Element objectsElement = root.getChildByName("objects");
        final Array<String> objectModelNames = new Array<String>();

        for (XmlReader.Element objectElement : objectsElement.getChildrenByName("object")) {
            objectModelNames.add(objectElement.getAttribute("model"));
        }

        final int textureSetId = root.getIntAttribute("texturesetid", 0);
        final int geometrySetId = root.getIntAttribute("geometryesetid", 0);
        final TextureAtlasLoader.TextureAtlasParameter textureAtlasParameter = new TextureAtlasLoader.TextureAtlasParameter();
        textureAtlasParameter.flip = true;

        // FIXME: File paths shouldn't be handled like that
        dependencies.add(new AssetDescriptor<TextureAtlas>(
                "assets/texturesets/" + Integer.toString(textureSetId) + ".atlas", TextureAtlas.class,
                textureAtlasParameter));
        dependencies.add(new AssetDescriptor<GeometrySet>(
                "assets/geometrysets/" + Integer.toString(geometrySetId) + ".hgs", GeometrySet.class));

        final Set<String> objectModelNameSet = new HashSet<String>();
        for (String objectModelName : objectModelNames) {
            objectModelNameSet.add(objectModelName);
        }

        for (String objectModelName : objectModelNameSet) {
            dependencies.add(
                    new AssetDescriptor<Model>("assets/objects/" + objectModelName + ".g3db", Model.class));
        }

        return dependencies;
    } catch (IOException e) {
        throw new GdxRuntimeException("Couldn't load map region '" + fileName + "'", e);
    }
}

From source file:com.intrepid.nicge.utilz.animation.AnimationPackLoader.java

@SuppressWarnings({ "rawtypes", "unchecked" })
@Override/*from   w ww.ja v  a  2 s  .com*/
public Array<AssetDescriptor> getDependencies(String fileName, FileHandle file,
        AnimationPackParameter parameter) {
    Array<AssetDescriptor> deps = new Array<>();

    String path = "resources/textures/" + file.nameWithoutExtension() + ".png";
    FileHandle resolved = resolve(path);

    TextureLoader.TextureParameter textureParams = new TextureLoader.TextureParameter();
    if (parameter != null) {
        textureParams.genMipMaps = parameter.genMipMaps;
        textureParams.minFilter = parameter.minFilter;
        textureParams.magFilter = parameter.magFilter;
    } else {
        textureParams.genMipMaps = false;
        textureParams.minFilter = TextureFilter.Nearest;
        textureParams.magFilter = TextureFilter.Nearest;
    }

    deps.add(new AssetDescriptor(resolved, Texture.class, textureParams));

    return deps;
}

From source file:com.kotcrab.vis.plugin.spine.runtime.SpineSupport.java

License:Open Source License

@Override
public void resolveDependencies(Array<AssetDescriptor> dependencies, EntityData entityData,
        Component component) {/*from   w w w .  j  a  v a 2 s .co  m*/
    if (component instanceof AssetReference) {
        VisAssetDescriptor asset = ((AssetReference) component).asset;
        if (asset instanceof SpineAssetDescriptor) {
            SpineAssetDescriptor spineAsset = (SpineAssetDescriptor) asset;

            SkeletonDataLoaderParameter parameter = new SkeletonDataLoaderParameter(spineAsset.getAtlasPath(),
                    spineAsset.getSkeletonPath(), spineAsset.getScale());
            dependencies.add(new AssetDescriptor<SkeletonData>(spineAsset.getArbitrarySkeletonPath(),
                    SkeletonData.class, parameter));
        }
    }
}

From source file:com.kotcrab.vis.runtime.font.BitmapFontProvider.java

License:Apache License

@Override
public void load(Array<AssetDescriptor> dependencies, VisAssetDescriptor asset) {
    BmpFontAsset bmpAsset = (BmpFontAsset) asset;
    dependencies.add(//  w w w . j av  a2 s .c  om
            new AssetDescriptor<BitmapFont>(bmpAsset.getPath(), BitmapFont.class, bmpAsset.getFontParameter()));
}

From source file:com.kotcrab.vis.runtime.font.BmpFontProvider.java

License:Apache License

@Override
public void load(Array<AssetDescriptor> dependencies, TextData data) {
    BitmapFontParameter params = new BitmapFontParameter();
    if (data.isUsesDistanceField) {
        params.genMipMaps = true;/* w w w. j a v  a  2 s. c  o  m*/
        params.minFilter = TextureFilter.MipMapLinearLinear;
        params.magFilter = TextureFilter.Linear;
    }

    PathAsset pathAsset = (PathAsset) data.assetDescriptor;

    dependencies.add(new AssetDescriptor(pathAsset.getPath(), BitmapFont.class, params));
}

From source file:com.kotcrab.vis.runtime.font.FreeTypeFontProvider.java

License:Apache License

@Override
public void load(Array<AssetDescriptor> dependencies, VisAssetDescriptor asset) {
    TtfFontAsset ttfAsset = (TtfFontAsset) asset;

    FreeTypeFontLoaderParameter params = new FreeTypeFontLoaderParameter();
    params.fontFileName = ttfAsset.getPath();
    params.fontParameters.size = ttfAsset.getFontSize();

    dependencies//  ww  w.j  a  v a  2s.  c o m
            .add(new AssetDescriptor<BitmapFont>(ttfAsset.getArbitraryFontName(), BitmapFont.class, params));
}

From source file:com.mangecailloux.pebble.assets.AssetsManager.java

License:Apache License

/**
 * Convenience method for creating {@link AssetDescriptor}. <br/> {@link PebbleSoundLoaderParameter} and {@link PebbleMusicLoaderParameter} will
 * be automatically checked, or added if needed.
 * @param _fileName path to the asset, relative to the Assets folder in the Android project
 * @param _type   type of the asset//from w w w .java  2 s .co  m
 * @param _params optionnal parameters, can be null
 * @return the newly created AssetDescriptor. Store it somewhere for easy access to the asset.
 */
@SuppressWarnings("unchecked")
public static <T> AssetDescriptor<T> newDescriptor(String _fileName, Class<T> _type,
        AssetLoaderParameters<T> _params) {
    // if we load a sound
    if (_type == Sound.class) {
        //
        if (_params != null && !(_params instanceof PebbleSoundLoaderParameter))
            throw new IllegalArgumentException(
                    "AssetsManager::newDescriptor : sound parameter must be a PebbleSoundLoaderParameter");

        if (_params == null)
            _params = (AssetLoaderParameters<T>) new PebbleSoundLoaderParameter();
    }

    if (_type == Music.class) {
        if (_params != null && !(_params instanceof PebbleMusicLoaderParameter))
            throw new IllegalArgumentException(
                    "AssetsManager::newDescriptor : music parameter must be a PebbleMusicLoaderParameter");

        if (_params == null)
            _params = (AssetLoaderParameters<T>) new PebbleMusicLoaderParameter();
    }

    return new AssetDescriptor<T>(_fileName, _type, _params);
}

From source file:de.cubicvoxel.openspacebox.assetmanagement.asset.FontAsset.java

License:Open Source License

FontAsset(String path, ManagedFontLoader.ManagedFontParameter managedFontParameter) {
    String pathAndName = path + NAME_SEPARATOR + name();
    assetDescriptor = new AssetDescriptor<>(pathAndName, BitmapFont.class, managedFontParameter);
}

From source file:es.eucm.ead.engine.assets.loaders.ScaledTextureLoader.java

License:Open Source License

@Override
public Array<AssetDescriptor> getDependencies(String fileName, FileHandle file,
        AssetLoaderParameters<ScaledTexture> parameter) {
    String imageName = fileName;//from  w w w .  ja  v a2  s .c  om
    if (fileName.toLowerCase().endsWith(".tex")) {
        imageName = fileName.substring(0, fileName.lastIndexOf("."));
    }

    FileHandle imageFile = gameAssets.resolve(imageName);
    imageUtils.imageSize(imageFile, size);
    if (imageUtils.validSize(size)) {
        scale = 1.0f;
        return Array.with(assetDescriptor = new AssetDescriptor(imageFile, Texture.class, textureParameter));
    } else {
        FileHandle scaleProperty = gameAssets
                .resolveProject(ModelStructure.METADATA_PATH + imageFile.name() + ".prop");
        FileHandle scaled = gameAssets
                .resolveProject(ModelStructure.METADATA_PATH + imageFile.name() + ".scaled");
        if (!imageFile.exists() || !scaleProperty.exists()) {
            scale = imageUtils.scale(imageFile, scaled);
            scaleProperty.writeString(scale + "", false);
        } else {
            scale = Float.parseFloat(scaleProperty.readString());
        }
        return Array.with(assetDescriptor = new AssetDescriptor(scaled, Texture.class, textureParameter));
    }
}