/** * initialize the pem map * @param size the size of the map * @param imageFormat the format of the image * @return the initialized prefiltered env map */ public static TextureCubeMap createPrefilteredEnvMap(int size, Image.Format imageFormat) { TextureCubeMap pem = new TextureCubeMap(size, size, imageFormat); pem.setMagFilter(Texture.MagFilter.Bilinear); pem.setMinFilter(Texture.MinFilter.Trilinear); pem.getImage().setColorSpace(ColorSpace.Linear); int nbMipMap = Math.min(6, (int) (Math.log(size) / Math.log(2))); CubeMapWrapper targetWrapper = new CubeMapWrapper(pem); targetWrapper.initMipMaps(nbMipMap); return pem; } }
CubeMapWrapper sourceWrapper = new CubeMapWrapper(sourceEnvMap); CubeMapWrapper targetWrapper = new CubeMapWrapper(pem);
ColorRGBA color = new ColorRGBA(); CubeMapWrapper envMapReader = new CubeMapWrapper(cubeMap); for (int face = 0; face < 6; face++) { for (int y = 0; y < height; y++) {
/** * initialize the pem map * @param size the size of the map * @param imageFormat the format of the image * @return the initialized prefiltered env map */ public static TextureCubeMap createPrefilteredEnvMap(int size, Image.Format imageFormat) { TextureCubeMap pem = new TextureCubeMap(size, size, imageFormat); pem.setMagFilter(Texture.MagFilter.Bilinear); pem.setMinFilter(Texture.MinFilter.Trilinear); pem.getImage().setColorSpace(ColorSpace.Linear); int nbMipMap = Math.min(6, (int) (Math.log(size) / Math.log(2))); CubeMapWrapper targetWrapper = new CubeMapWrapper(pem); targetWrapper.initMipMaps(nbMipMap); return pem; } }
CubeMapWrapper sourceWrapper = new CubeMapWrapper(sourceEnvMap); CubeMapWrapper targetWrapper = new CubeMapWrapper(pem);
ColorRGBA color = new ColorRGBA(); CubeMapWrapper envMapReader = new CubeMapWrapper(cubeMap); for (int face = 0; face < 6; face++) { for (int y = 0; y < height; y++) {