Page 1 of 2

At LAST! UltraFast Conversion|Display of DDS in Linux, Win,.

Posted: 18.01.2003, 21:58
by t00fri
++++++++++++++++++++++
Forget about 'nvdxt'...
++++++++++++++++++++++

I discovered an amazing open-source /multi-platform/ Image Library Project for
developers, that handles DXT Format + openGL support very well and
easily! It understands an incredible amount of different image
formats.

...and it WORKS!

DevIL:= Developer's Image Library
==================================
http://openil.sourceforge.net/features.php
http://openil.sourceforge.net/download.php

Many people may have known DevIL as OpenIL, but the name was changed
due to SGI's request. Developer's Image Library (DevIL) is a
programmer's library to develop applications with very powerful image
loading capabilities, yet is easy for a developer to learn and
use. Ultimate control of images is left to the developer, so
unnecessary conversions, etc. are not performed. DevIL utilizes
a simple, yet powerful, syntax. DevIL can load, save, convert,
manipulate, filter and display a wide variety of image formats.

Currently, DevIL can load .bmp, .cut, .dds, .doom, .gif, .ico, .jpg,
.lbm, .mdl, .mng, .pal, .pbm, .pcd, .pcx, .pgm, .pic, .png, .ppm,
.psd, .psp, .raw, .sgi, .tga and .tif files.

Formats supported for saving include .bmp, .dds, .h, .jpg, .pal, .pbm,
.pcx, .pgm,.png, .ppm, .raw, .sgi, .tga and .tif.

DevIL currently supports the following APIs for display: OpenGL,
Windows GDI, SDL, DirectX and Allegro. Compilers that can compile
DevIL or use it include Djgpp, MSVC++, Linux gcc, Delphi, Visual
Basic, Power Basic and Dev-C++.
--------------------------------------

The latest version 1.6.5 /compiles very easily on Linux/, provided the
following (standard) libraries are installed:

Libpng, for .png support.
Zlib, for compression.
Libjpeg, for .jpg support.
Libtiff, for .tif support.
Libmng, for .mng support.
Little CMS, for colour profiles.

A zip file of the sources for these external libraries is available,
however, as LibSrc.zip.
The library also exists in various precompiled versions for 'End
Users'!

========================================================
With the help of the DevIL library I hacked today a number of very
simple, super-fast conversion tools and (openGL) image viewers.

After a little bit of further testing I shall make my tools available on my TextureFoundry site. Stay tuned...
========================================================

The speed is fascinating and there are no problems with memory or graphics!

1) Benchmarks (PIII 1GHz, 512MB CL2 Ram):
-----------------------------------------
16k earth.tga => earth.dds : 2.5 Minutes !
8K earth.png => earth.dds : 15 seconds ! (took >15 min's with nvdxt)

For the first time, I could convert my 16k earth textures to dds!

Reading dds and converting it to anything like jpg, png, tga, tiff is
even faster.

2) Handles (individual) Mipmaps easily, so one may compose a dds file from
different kinds of textures of 2^n size.

3) My openGL viewer is super, despite its simplicity. Fast display of
DDS format under Linux and any other formats...Zoom still missing though.

Lots of further posibilities ahead, I am just at the start...


Bye Fridger

PS: The translation of formats is as follows:

nvdxt: DXT1a => ilSetInteger(IL_DXTC_FORMAT,IL_DXT1);
DXT1c => ilSetInteger(IL_DXTC_FORMAT,IL_DXT3);
etc.

Posted: 18.01.2003, 23:08
by Rassilon
As usual on top of things ;)...I look forward to your tools Fridger...

Posted: 28.01.2003, 04:57
by abiogenesis
Hey, Fridger-

I've downloaded and built DevIL on WinXP (I know...), but I'm having a problem. It's all my fault though, as it's likely improper use. Remember that 32k earth texture that has been summarily dismissed as a pipe dream by the wisest of the developers on the forum? Well, I can't give it up. I know Celestia won't be able to load it, even if I can build it, but I'm a glutton for punishment. I won't feel that I've gotten the most out of my PC until I can make it actually cry. :twisted:

Anyway, I successfully stitched the two hemispheres of NASA's texture into a 32kx16k .tiff using NetPBM (thanks, Selden!) but I can't convert it to .dds. nvdxt takes a very long time to crash and DevIL is giving me an out of memory error when loading the file. I can't see what the problem is, it's only 1.5GB!

In your post above, you mention:
The speed is fascinating and there are no problems with memory or graphics!


But I'm having a problem with memory. I've only been using the libraries for about 20 minutes now, so it is quite possible that I'm overlooking something. Is there some way to have DevIL make more efficient use of my 1GB of RAM, or am I, yet again, out of luck?

Here are the specs of the system that I'm trying to break. You can see it's pretty beefy, but the NASA texture should do the trick!

Athlon XP 2100+
1GB PC2700 SDRAM
120GB HDD
GeForce 3 (plain vanilla, no Ti)[/i]

Posted: 28.01.2003, 13:09
by t00fri
abiogenesis wrote:Hey, Fridger-

I've downloaded and built DevIL on WinXP (I know...), but I'm having a problem. It's all my fault though, as it's likely improper use. Remember that 32k earth texture that has been summarily dismissed as a pipe dream by the wisest of the developers on the forum? Well, I can't give it up. I know Celestia won't be able to load it, even if I can build it, but I'm a glutton for punishment. I won't feel that I've gotten the most out of my PC until I can make it actually cry. :twisted:

Anyway, I successfully stitched the two hemispheres of NASA's texture into a 32kx16k .tiff using NetPBM (thanks, Selden!) but I can't convert it to .dds. nvdxt takes a very long time to crash and DevIL is giving me an out of memory error when loading the file. I can't see what the problem is, it's only 1.5GB!

In your post above, you mention:
The speed is fascinating and there are no problems with memory or graphics!

But I'm having a problem with memory. I've only been using the libraries for about 20 minutes now, so it is quite possible that I'm overlooking something. Is there some way to have DevIL make more efficient use of my 1GB of RAM, or am I, yet again, out of luck?

Here are the specs of the system that I'm trying to break. You can see it's pretty beefy, but the NASA texture should do the trick!

Athlon XP 2100+
1GB PC2700 SDRAM
120GB HDD
GeForce 3 (plain vanilla, no Ti)[/i]


First of all, you should check whether you can convert a 16k texture to dds. This SHOULD definitely work. Also, there are a number of bugs in the DevIL library that I first had to eliminate. But this does not yet affect the operations at the level you are now.

Still, you should at least be able to load the texture into memory, which you cannot apparently, since your memory is 1GB and the texture size is 1.5 GB! I know of a method to convert arbitray sized files but it is very tedious.


Bye Fridger

Posted: 28.01.2003, 14:42
by Don. Edwards
To abiogenesis,
You seem to running into the same problems I have trying to work with 16k textures under XP. XP takes up more memory than the older Win98. If you have an old harddisk lying around with an install on it you might consider coping your texture to it and trying to compile your .dds under that instead. I had to resort to this the first time I tried to make an 8k texture due to only having 768mb of RAM. I did a RAM upgrade and now can work with 8k textures and create 8k .dds files in XP but as of yet even the 16k textures elude me and I am now working with a GIG of RAM. I personaly wouldn't even consider a 32k as you said earier you will never get the thing to load. But if its bragging rights you want then more power to you. I think you are in for even a greater memory upgrade though.
Have Fun!

Posted: 15.02.2003, 17:05
by Guest
Hey guys.. I was having a problem getting nvdxt to operate on big files under WinXP also. I found my problem was the swap file was too small. Since I increased it (and told windows to stop resizing it as well), I've been able to fool with the 16k files successfully. I only have 256M of physical memory so it could be you guys are having a similar problem.

This new tool kits sounds great.. have to start the download NOW..
Later, hippie (I'll register here eventually)

Posted: 16.02.2003, 20:16
by Rassilon
Increased RAM will solve winXP's swap...XP gobbles up 128 megs of RAM right off the top so doing anything like 16k textures would require 512-1 gig of RAM preferrably DDR (messing with the swap is not recommended generally)...that is for best performance of course ;)

At LAST! UltraFast Conversion|Display of DDS in Linux, Win,.

Posted: 16.02.2003, 23:48
by billybob884
t00fri wrote:++++++++++++++++++++++
Forget about 'nvdxt'...
++++++++++++++++++++++

I discovered an amazing open-source /multi-platform/ Image Library Project for
developers, that handles DXT Format + openGL support very well and
easily! It understands an incredible amount of different image
formats.

...and it WORKS!

DevIL:= Developer's Image Library
==================================
http://openil.sourceforge.net/features.php
http://openil.sourceforge.net/download.php

this is exactly what i've been looking for, probably for at least a month

At LAST! UltraFast Conversion|Display of DDS in Linux, Win,.

Posted: 17.02.2003, 01:00
by t00fri
billybob884 wrote:
t00fri wrote:++++++++++++++++++++++
Forget about 'nvdxt'...
++++++++++++++++++++++

I discovered an amazing open-source /multi-platform/ Image Library Project for
developers, that handles DXT Format + openGL support very well and
easily! It understands an incredible amount of different image
formats.

...and it WORKS!

DevIL:= Developer's Image Library
==================================
http://openil.sourceforge.net/features.php
http://openil.sourceforge.net/download.php
this is exactly what i've been looking for, probably for at least a month


That announcement I made a /month/ ago and the reaction on it was so meager that I coded the whole thing and decided to use it just for myself;-)...

What I made is a dds viewer (without zoom yet) using openGL. It also displays many other formats.

Moreover and most importantly, I coded a conversion utility that dependent on command line parameters, converts any graphics format into DXT including Mipmaps.
Notably with my 512MB of RAM, I can convert even 16k textures of any popular graphics format /very fast/ into DXT! This I never managed with the nvdxt tool.

It can do a number of other things, but no Normal maps yet.

For now, I simply do not have the time to "service" the code for unexperienced users. Anyone who knows how to compile, is welcome to play with the stuff...

It's in C not C++.

For Linux, I have binaries, of course.

Bye Fridger

Posted: 17.02.2003, 01:52
by billybob884
i must have missed that post...

At LAST! UltraFast Conversion|Display of DDS in Linux, Win,.

Posted: 17.02.2003, 20:32
by jim
t00fri wrote:
Anyone who knows how to compile, is welcome to play with the stuff...



That's the point. I hope someone can do that for windows.

Thanks Fridger for your great work.

Jens

At LAST! UltraFast Conversion|Display of DDS in Linux, Win,.

Posted: 17.02.2003, 21:38
by t00fri
jim wrote:
t00fri wrote:
Anyone who knows how to compile, is welcome to play with the stuff...


That's the point. I hope someone can do that for windows.

Thanks Fridger for your great work.

Jens


I have just sent the code to Selden. He is going to give it a try with Cygwin in Windows. I have even assembled an "emergency style" Readme.txt. Hope it is enough;-). Everything works quite fine for me at least...

Bye Fridger

Posted: 17.02.2003, 21:41
by billybob884
so selden will be compiling it all into a texture conversion program? (it turns out that i dont have any of the required programs to compile it :oops: )

Posted: 17.02.2003, 22:16
by selden
Mike,

Now that is a rash assumption!
I'll try, but you may have to install the (free) Cygwin environment to be able to use the programs.

http://www.cygwin.com/

Posted: 17.02.2003, 22:23
by billybob884
sorry, just a guess

Posted: 18.02.2003, 00:32
by Rassilon
Well if someone will compile it for the Win32 platform and post it for download Ill try it out...

Posted: 18.02.2003, 03:36
by selden
Unfortunately my brief attempt to build Fridger's programs under Windows was not successful. At least one of the libraries required by the display program does not seem to exist for Windows.

I'll have to leave it to someone else.

Sorry.

Posted: 18.02.2003, 05:03
by Rassilon
Oh well been using nvdxt for a while wont make me cry to use it for a while longer ;)

Posted: 18.02.2003, 08:04
by t00fri
selden wrote:Unfortunately my brief attempt to build Fridger's programs under Windows was not successful. At least one of the libraries required by the display program does not seem to exist for Windows.

I'll have to leave it to someone else.

Sorry.


So which one is it? Does it concern the building of 'showgl'? If so, then it concerns Cygwin's openGL installation, presumably.

The DXD converter 'texconvert' does not use openGL. Moreover, by looking at ./configure --help, you see that you may turn off a number of graphics formats for which the respective libs are not installed on your system...

Did the installation of the DevIL graphics package work fine at least?

Bye Fridger

Posted: 18.02.2003, 12:28
by selden
Fridger,

Yes, there are libraries I couldn't find for showGL

I did manage to get DevIL installed.
It didn't include any library named IL, but one named "devil" seemed to satify the unresolved references for TexConvert. I don't know if it actually works, though.

Cygwin only includes the OpenGL libraries libblui.a and libgluix.a. GLUT is separate, for example.

The library simply called "GL" was my stumbling block. I don't know enough about OpenGL to know what Windows package that corresonds to.