Core stability

Hi,

[quote]The GIMP says
[/quote]
GIMP lies, sorry.

JPEG can hold arbitrary number of bands, AFAIK. And meaning of the bands is completely application-specific. For example, Photoshop uses 4-band JPEGs for storing CMYK images.

Take a look at com.sun.image.codec.jpeg.JPEGDecodeParam JavaDoc for more details. I have somewhere more detalied description of how it works, but I believe it is internal doc… I can not remember exacly…

Another point is that ImageIO JPEG decoding is native-code-accelerated in Java. Not the fastest one, but…

I am not a proponent of neither JPEG nor ImageIO, but for me ImageIO is most compatible image loading mechanism for a moment. If you consider porting another image loading lib, then it should be (I think) A) compatible with ImageIO; B) be Pure Java - I believe we should TRY to keep Xith3D Pure Java, otherwise it has no advantage of being used in Applets without purchasing VeriSign certificate (remember that JOGL comes signed by Sun already).

Yuri

I agree with Yuri.

Also, if I remember well, bottleneck about texture loading is not actually JPEG/PNG/TGA/whatever decoding but 3-4 times copy.

Now faster texture loading included, check it out !

I personally only use DDS or TGA; DDS is a horrible file format, but its easy to parse and there are alot of exporters for it (photoshop plugin and theres a beta gimp plugin too), there is also alot of toolsets from nvidia and ATI that help with DDS stuff…

With the custom file loader for DDS, i only oncurr 1 copy, and thats the glCompressedTexImage2D copy, a bare minimum. Maybe you should write your own file loaders and have a more specific approach to texture loaders. JPEG, GIF, BMP et al really weren’t made for games…

DP

DP : thanks for the tip but, texture loader does already load DDS compressed textures. (Thanks mattiasman, if I remember correctly).