public void initialize(EnumSet<Caps> caps) { this.formats = GLImageFormats.getFormatsForCaps(caps); if (logger.isLoggable(Level.FINE)) { StringBuilder sb = new StringBuilder(); sb.append("Supported texture formats: \n"); for (int i = 0; i < Format.values().length; i++) { Format format = Format.values()[i]; if (formats[0][i] != null) { boolean srgb = formats[1][i] != null; sb.append("\t").append(format.toString()); sb.append(" (Linear"); if (srgb) sb.append("/sRGB"); sb.append(")\n"); } } logger.log(Level.FINE, sb.toString()); } }
private static GLImageFormat getSrgbFormat(Format fmt){ switch (fmt){ case RGB8 : return sRGB_RGB8; case RGBA8 : return sRGB_RGBA8; case BGR8 : return sRGB_BGR8; case ABGR8 : return sRGB_ABGR8; case Luminance8 : return sRGB_Luminance8; case Luminance8Alpha8 : return sRGB_LuminanceAlpha8; case DXT1 : return sRGB_DXT1; case DXT1A : return sRGB_DXT1A; case DXT3 : return sRGB_DXT3; case DXT5 : return sRGB_DXT5; default : Logger.getLogger(TextureUtil.class.getName()).log(Level.WARNING, "Format {0} has no sRGB equivalent, using linear format.", fmt.toString()); return formatToGL[fmt.ordinal()]; } }
log.log(Level.FINE, "img format {0}", imgFormat.toString());
log.log(Level.FINE, "img format {0}", imgFormat.toString());
return sRGB_DXT5; default: Logger.getLogger(TextureUtil.class.getName()).log(Level.WARNING, "Format {0} has no sRGB equivalent, using linear format.", fmt.toString()); return formatToGL[fmt.ordinal()];
public void initialize(EnumSet<Caps> caps) { this.formats = GLImageFormats.getFormatsForCaps(caps); if (logger.isLoggable(Level.FINE)) { StringBuilder sb = new StringBuilder(); sb.append("Supported texture formats: \n"); for (int i = 0; i < Format.values().length; i++) { Format format = Format.values()[i]; if (formats[0][i] != null) { boolean srgb = formats[1][i] != null; sb.append("\t").append(format.toString()); sb.append(" (Linear"); if (srgb) sb.append("/sRGB"); sb.append(")\n"); } } logger.log(Level.FINE, sb.toString()); } }
private int getARGB(Format format, ByteBuffer data) { int result = 0; switch (format) { case BGR8: result = 0xFF000000 | (data.get() & 0xFF) | ((data.get() & 0xFF) << 8) | ((data.get() & 0xFF) << 16); if (result == 0xFF00FF00) { // green only result = 0; // transparent } break; case ABGR8: int abgr = data.getInt(); result = ((abgr & 255) << 24) | (abgr >> 8); break; default: throw new RuntimeException("Unsupported file format " + format.toString()); } return result; } }
private static GLImageFormat getSrgbFormat(Format fmt){ switch (fmt){ case RGB8 : return sRGB_RGB8; case RGBA8 : return sRGB_RGBA8; case BGR8 : return sRGB_BGR8; case ABGR8 : return sRGB_ABGR8; case Luminance8 : return sRGB_Luminance8; case Luminance8Alpha8 : return sRGB_LuminanceAlpha8; case DXT1 : return sRGB_DXT1; case DXT1A : return sRGB_DXT1A; case DXT3 : return sRGB_DXT3; case DXT5 : return sRGB_DXT5; default : Logger.getLogger(TextureUtil.class.getName()).log(Level.WARNING, "Format {0} has no sRGB equivalent, using linear format.", fmt.toString()); return formatToGL[fmt.ordinal()]; } }