DevIL TODO:

-----------



- Add more filters.  Some sites to look at are http://www.jasonwaltman.com/thesis/introduction.html http://www.dai.ed.ac.uk/CVonline/transf.htm http://www.fortunecity.com/lavendar/kane/39/ffpg.htm and http://www.opengl.org/developers/documentation/Version1.2/1.2specs/convolution_border_modes.txt .  The last link describes ways to handle borders for the convolution filters.  It might be worthwhile to allow these kinds of options.



- Finalize the Unicode support.  For instance, ILUT doesn't use Unicode at all.



- Add support for callbacks so that users can create progress meters for loading and saving in their applications.  We could extend this idea further and allow cancellation of loading/saving images.



- Get rid of dependence on the external libraries to create a smaller library.  This is a bit of a monumental task, though.



- Add an IL_BITMAP format.  This would be great for WBMP files.  The problem is that bit manipulation can be extremely tedious, even with macros.



- Make better versions of the DevIL ports of the NeHe tutorials.  Several of the tutorials don't call ilInit, for instance.



- Fix problems with the MFC and static library versions of DevIL.



- Add support for the external libraries to WinCE.



- Add support for volume texture compression (VTC).



- Find a way to make the filters (especially the convolution filters) work in three dimensions.



- Finish support for regions in ILU.



- Add support for regions in IL.  This could be used to save only a specific portion of an image.



- Add support for user-defined filters (possibly of a user-defined size).



- Update the state stack in IL.  Right now, it only saves part of the states when you push/pop.



- Work on making DevIL more stable.  There's probably a few places where I don't check the return value of ilNewImage, for instance.



- Add dithering.



- Look at .cgm support.



- Add padding options, so that each line could be DWORD-padded, for instance.



- Find a better algorithm for generating DXTC textures.



- Add volume texture/cubemap saving (.dds).



- Fix problems loading .dds files on Big Endian machines.



- Work on the signed/unsigned conversions a bit more (IL_BYTE versus IL_UNSIGNED_BYTE, etc.).  A good link for defining signed formats is http://www.sgi.com/software/opengl/advanced98/notes/node31.html .



- Possibly add support for other colour spaces besides RGB (CMYK, YUV, etc.)



- Look at adding FreeType support to ILU.



- Implement a scripting "language" with LUA for ILU.  This way, people can generate scripts to run a certain set of filters on all images.



- Add support for blending modes with layers (such as in the .psd) format.



- Add clipboard and printing support in Linux.



- Improve GIF, PSP, PSD support



- Make the format in wich the images are loaded selectable and not fixed to BGR



- Add TWAIN support.



- Look at other rescaling algorithms:

http://java.sun.com/products/java-media/jai/forDevelopers/jai1_0guide/Geom-image-manip.doc.html

http://java.sun.com/products/java-media/jai/forDevelopers/jai1_0guide/Geom-image-manip.doc.html#55431

http://www.npac.syr.edu/projects/nasa/MILOJE/final/node36.html

http://www.ultranet.com/~aramini/design.html



