@@ -0,0 +1,1672 @@
+package ca.blarg.gdx.tilemap3d.json.tilemesh;%0A%0Aimport ca.blarg.gdx.graphics.atlas.TextureAtlas;%0Aimport ca.blarg.gdx.tilemap3d.tilemesh.MaterialTileMapping;%0Aimport com.badlogic.gdx.assets.AssetDescriptor;%0Aimport com.badlogic.gdx.assets.AssetLoaderParameters;%0Aimport com.badlogic.gdx.assets.AssetManager;%0Aimport com.badlogic.gdx.assets.loaders.AsynchronousAssetLoader;%0Aimport com.badlogic.gdx.assets.loaders.FileHandleResolver;%0Aimport com.badlogic.gdx.files.FileHandle;%0Aimport com.badlogic.gdx.utils.Array;%0A%0A@SuppressWarnings(%22unchecked%22)%0Apublic class MaterialTileMappingLoader extends AsynchronousAssetLoader%3CMaterialTileMapping, MaterialTileMappingLoader.MaterialTileMappingParameter%3E %7B%0A%09public static class MaterialTileMappingParameter extends AssetLoaderParameters%3CMaterialTileMapping%3E %7B%0A%09%7D%0A%0A%09public MaterialTileMappingLoader(FileHandleResolver resolver) %7B%0A%09%09super(resolver);%0A%09%7D%0A%0A%09JsonMaterialMapping definition;%0A%09MaterialTileMapping mapping;%0A%0A%09@Override%0A%09public Array%3CAssetDescriptor%3E getDependencies(String fileName, FileHandle file, MaterialTileMappingParameter parameter) %7B%0A%09%09definition = MaterialTileMappingJsonLoader.load(file);%0A%09%09Array%3CAssetDescriptor%3E deps = new Array%3CAssetDescriptor%3E();%0A%09%09deps.add(new AssetDescriptor(definition.textureAtlas, TextureAtlas.class));%0A%09%09return deps;%0A%09%7D%0A%0A%09@Override%0A%09public void loadAsync(AssetManager manager, String fileName, FileHandle file, MaterialTileMappingParameter parameter) %7B%0A%09%09mapping = MaterialTileMappingJsonLoader.create(definition, manager);%0A%09%7D%0A%0A%09@Override%0A%09public MaterialTileMapping loadSync(AssetManager manager, String fileName, FileHandle file, MaterialTileMappingParameter parameter) %7B%0A%09%09return mapping;%0A%09%7D%0A%7D%0A

add MaterialTileMapping libgdx asset loader