@Override public ShaderProgram loadSync (AssetManager manager, String fileName, FileHandle file, ShaderProgramParameter parameter) { String vertFileName = null, fragFileName = null; if (parameter != null) { if (parameter.vertexFile != null) vertFileName = parameter.vertexFile; if (parameter.fragmentFile != null) fragFileName = parameter.fragmentFile; } if (vertFileName == null && fileName.endsWith(fragmentFileSuffix)) { vertFileName = fileName.substring(0, fileName.length() - fragmentFileSuffix.length()) + vertexFileSuffix; } if (fragFileName == null && fileName.endsWith(vertexFileSuffix)) { fragFileName = fileName.substring(0, fileName.length() - vertexFileSuffix.length()) + fragmentFileSuffix; } FileHandle vertexFile = vertFileName == null ? file : resolve(vertFileName); FileHandle fragmentFile = fragFileName == null ? file : resolve(fragFileName); String vertexCode = vertexFile.readString(); String fragmentCode = vertexFile.equals(fragmentFile) ? vertexCode : fragmentFile.readString(); if (parameter != null) { if (parameter.prependVertexCode != null) vertexCode = parameter.prependVertexCode + vertexCode; if (parameter.prependFragmentCode != null) fragmentCode = parameter.prependFragmentCode + fragmentCode; } ShaderProgram shaderProgram = new ShaderProgram(vertexCode, fragmentCode); if ((parameter == null || parameter.logOnCompileFailure) && !shaderProgram.isCompiled()) { manager.getLogger().error("ShaderProgram " + fileName + " failed to compile:\n" + shaderProgram.getLog()); } return shaderProgram; }
/** Creates a new AssetManager with optionally all default loaders. If you don't add the default loaders then you do have to * manually add the loaders you need, including any loaders they might depend on. * @param defaultLoaders whether to add the default loaders */ public AssetManager (FileHandleResolver resolver, boolean defaultLoaders) { this.resolver = resolver; if (defaultLoaders) { setLoader(BitmapFont.class, new BitmapFontLoader(resolver)); setLoader(Music.class, new MusicLoader(resolver)); setLoader(Pixmap.class, new PixmapLoader(resolver)); setLoader(Sound.class, new SoundLoader(resolver)); setLoader(TextureAtlas.class, new TextureAtlasLoader(resolver)); setLoader(Texture.class, new TextureLoader(resolver)); setLoader(Skin.class, new SkinLoader(resolver)); setLoader(ParticleEffect.class, new ParticleEffectLoader(resolver)); setLoader(com.badlogic.gdx.graphics.g3d.particles.ParticleEffect.class, new com.badlogic.gdx.graphics.g3d.particles.ParticleEffectLoader(resolver)); setLoader(PolygonRegion.class, new PolygonRegionLoader(resolver)); setLoader(I18NBundle.class, new I18NBundleLoader(resolver)); setLoader(Model.class, ".g3dj", new G3dModelLoader(new JsonReader(), resolver)); setLoader(Model.class, ".g3db", new G3dModelLoader(new UBJsonReader(), resolver)); setLoader(Model.class, ".obj", new ObjLoader(resolver)); setLoader(ShaderProgram.class, new ShaderProgramLoader(resolver)); setLoader(Cubemap.class, new CubemapLoader(resolver)); } executor = new AsyncExecutor(1); }
/** Creates a new AssetManager with optionally all default loaders. If you don't add the default loaders then you do have to * manually add the loaders you need, including any loaders they might depend on. * @param defaultLoaders whether to add the default loaders */ public AssetManager (FileHandleResolver resolver, boolean defaultLoaders) { this.resolver = resolver; if (defaultLoaders) { setLoader(BitmapFont.class, new BitmapFontLoader(resolver)); setLoader(Music.class, new MusicLoader(resolver)); setLoader(Pixmap.class, new PixmapLoader(resolver)); setLoader(Sound.class, new SoundLoader(resolver)); setLoader(TextureAtlas.class, new TextureAtlasLoader(resolver)); setLoader(Texture.class, new TextureLoader(resolver)); setLoader(Skin.class, new SkinLoader(resolver)); setLoader(ParticleEffect.class, new ParticleEffectLoader(resolver)); setLoader(com.badlogic.gdx.graphics.g3d.particles.ParticleEffect.class, new com.badlogic.gdx.graphics.g3d.particles.ParticleEffectLoader(resolver)); setLoader(PolygonRegion.class, new PolygonRegionLoader(resolver)); setLoader(I18NBundle.class, new I18NBundleLoader(resolver)); setLoader(Model.class, ".g3dj", new G3dModelLoader(new JsonReader(), resolver)); setLoader(Model.class, ".g3db", new G3dModelLoader(new UBJsonReader(), resolver)); setLoader(Model.class, ".obj", new ObjLoader(resolver)); setLoader(ShaderProgram.class, new ShaderProgramLoader(resolver)); setLoader(Cubemap.class, new CubemapLoader(resolver)); } executor = new AsyncExecutor(1); }
/** Creates a new AssetManager with optionally all default loaders. If you don't add the default loaders then you do have to * manually add the loaders you need, including any loaders they might depend on. * @param defaultLoaders whether to add the default loaders */ public AssetManager (FileHandleResolver resolver, boolean defaultLoaders) { this.resolver = resolver; if (defaultLoaders) { setLoader(BitmapFont.class, new BitmapFontLoader(resolver)); setLoader(Music.class, new MusicLoader(resolver)); setLoader(Pixmap.class, new PixmapLoader(resolver)); setLoader(Sound.class, new SoundLoader(resolver)); setLoader(TextureAtlas.class, new TextureAtlasLoader(resolver)); setLoader(Texture.class, new TextureLoader(resolver)); setLoader(Skin.class, new SkinLoader(resolver)); setLoader(ParticleEffect.class, new ParticleEffectLoader(resolver)); setLoader(com.badlogic.gdx.graphics.g3d.particles.ParticleEffect.class, new com.badlogic.gdx.graphics.g3d.particles.ParticleEffectLoader(resolver)); setLoader(PolygonRegion.class, new PolygonRegionLoader(resolver)); setLoader(I18NBundle.class, new I18NBundleLoader(resolver)); setLoader(Model.class, ".g3dj", new G3dModelLoader(new JsonReader(), resolver)); setLoader(Model.class, ".g3db", new G3dModelLoader(new UBJsonReader(), resolver)); setLoader(Model.class, ".obj", new ObjLoader(resolver)); setLoader(ShaderProgram.class, new ShaderProgramLoader(resolver)); setLoader(Cubemap.class, new CubemapLoader(resolver)); } executor = new AsyncExecutor(1); }
@Override public ShaderProgram loadSync (AssetManager manager, String fileName, FileHandle file, ShaderProgramParameter parameter) { String vertFileName = null, fragFileName = null; if (parameter != null) { if (parameter.vertexFile != null) vertFileName = parameter.vertexFile; if (parameter.fragmentFile != null) fragFileName = parameter.fragmentFile; } if (vertFileName == null && fileName.endsWith(fragmentFileSuffix)) { vertFileName = fileName.substring(0, fileName.length() - fragmentFileSuffix.length()) + vertexFileSuffix; } if (fragFileName == null && fileName.endsWith(vertexFileSuffix)) { fragFileName = fileName.substring(0, fileName.length() - vertexFileSuffix.length()) + fragmentFileSuffix; } FileHandle vertexFile = vertFileName == null ? file : resolve(vertFileName); FileHandle fragmentFile = fragFileName == null ? file : resolve(fragFileName); String vertexCode = vertexFile.readString(); String fragmentCode = vertexFile.equals(fragmentFile) ? vertexCode : fragmentFile.readString(); if (parameter != null) { if (parameter.prependVertexCode != null) vertexCode = parameter.prependVertexCode + vertexCode; if (parameter.prependFragmentCode != null) fragmentCode = parameter.prependFragmentCode + fragmentCode; } ShaderProgram shaderProgram = new ShaderProgram(vertexCode, fragmentCode); if ((parameter == null || parameter.logOnCompileFailure) && !shaderProgram.isCompiled()) { manager.getLogger().error("ShaderProgram " + fileName + " failed to compile:\n" + shaderProgram.getLog()); } return shaderProgram; }
@Override public ShaderProgram loadSync (AssetManager manager, String fileName, FileHandle file, ShaderProgramParameter parameter) { String vertFileName = null, fragFileName = null; if (parameter != null) { if (parameter.vertexFile != null) vertFileName = parameter.vertexFile; if (parameter.fragmentFile != null) fragFileName = parameter.fragmentFile; } if (vertFileName == null && fileName.endsWith(fragmentFileSuffix)) { vertFileName = fileName.substring(0, fileName.length() - fragmentFileSuffix.length()) + vertexFileSuffix; } if (fragFileName == null && fileName.endsWith(vertexFileSuffix)) { fragFileName = fileName.substring(0, fileName.length() - vertexFileSuffix.length()) + fragmentFileSuffix; } FileHandle vertexFile = vertFileName == null ? file : resolve(vertFileName); FileHandle fragmentFile = fragFileName == null ? file : resolve(fragFileName); String vertexCode = vertexFile.readString(); String fragmentCode = vertexFile.equals(fragmentFile) ? vertexCode : fragmentFile.readString(); if (parameter != null) { if (parameter.prependVertexCode != null) vertexCode = parameter.prependVertexCode + vertexCode; if (parameter.prependFragmentCode != null) fragmentCode = parameter.prependFragmentCode + fragmentCode; } ShaderProgram shaderProgram = new ShaderProgram(vertexCode, fragmentCode); if ((parameter == null || parameter.logOnCompileFailure) && !shaderProgram.isCompiled()) { manager.getLogger().error("ShaderProgram " + fileName + " failed to compile:\n" + shaderProgram.getLog()); } return shaderProgram; }