Bright Ideas Software - Calculus Visualization Tools Click here to return to the BIS Home Page.

GLE32 Version 5

  Skip Navigation LinksHome --> Developers --> GLE32 --> Rev. History/Notes Search:
  Skip Navigation Links
Skip Navigation Links
Skip Navigation Links
OpenGL® and OpenGL|ES are trademarks of Silicon Graphics, Inc.

Date: Version: Notes:
21 April 2008 4.1.1 Bug fix in the 3D font code.
25 Jan. 2008 4.1 Modified CgleTexture interface, removing default parameters in some creation functions and overloading them instead.
15 June 2007 4.01 Updated MilkShape3D model class to be compatible with version 1.8.1 of MilkShape3D.
2 April 2007 4.0 Primary improvements:
  1. Added MilkShape3D Model and OpenGL Shader Classes;
  2. Added support for selected OpenGL extensions;
  3. Improved/corrected bump mapped objects;
  4. New documentation package and demo.
2 March 2003 3.0 Primary improvements:
  1. Cleaned up horrible old basic objects code;
  2. Added bump mapped objects;
  3. Improved capability and flexibility of CgleTexture class, including adding 'BuildNormMapFromHeightMap' function, extending the usefulness of the bump mapped objects.
16 September 2002 2.52 Added support for JPEG-compressed TIFF images; also added the capability to pre-blend images containing alpha data with a user-specified background color.
14 August 2002 2.51 Minor bug fixes and improvements to the TGA and TIFF file handling code.
6 August 2002 2.5 Ah, yes... the hazards of publicly posting code. This rev fixes an error in the code that creates textures from images, and includes support for decompressing RLE-compressed bitmaps.

The image loading code has been improved, in part due to incorporation of several improvements by Jeff Molofee (NeHe). He cleaned up the code that re-sizes images, and inspired me to re-write the rest of the TextureFromBitmap code, eliminating unnecessary memory allocations and using GL_BGR_EXT and GL_BGRA_EXT pixel formats. Textures are now created directly from the bitmap pixel data. The public interface of the CgleTexture class changed (again) - the sample code in the documentation illustrates the new usage.
15 July 2002 2.4 Yes, hot on the heels of Ver. 2.3 comes... wait for it... Ver. 2.4!! Image data can now be loaded from files or an application resource in any of the following formats: BMP, DIB, JPEG, GIF, WMF, TGA, PGM, PMM, TIFF, and PNG. All TGA modes are supported - including the preservation Alpha channel data from 16-bit RLE compressed, color-mapped images. 8-bit, color-mapped RLE images offer (in our opinion) one of the best options for storing images to be used as textures. We hope to release, within the next few weeks, a small application that will allow users to translate images from one format to another, resize them, etc. It won't be a full-fledged image processing application, but it will support some of the more obscure formats that are potentially useful to GL programmers, and will allow users to save images in compressed format for later use as application resources.

Also in this release, new image flip and rotate routines have been added to Petzold's DIBSection wrapper code, and a couple of minor bugs are addressed. These bugs affected pixel access routines for 24 bit DIBSections, and the ability to load some bitmaps from files. See the GLE32V2DIBS.cpp source code for details.
3 July 2002 2.3 Improved loading of textures from files and resources. Images stored in the following formats may be loaded from an app's resources: BMP, JPG, WMF, and GIF. Images may be loaded from files of the following formats: BMP, JPG, WMF, GIF, PNG, and TIFF. PNG files can be stored with transparency information; when the picture is loaded and the texture created, you can specify the background color you want the picture to fade in to. One bug - color information for 24- or 32-bit TIFF grayscale images does not load correctly; the TIFF support is a work in progress. The Help file/Manual was updated, and a sample code snippet illustrating the use of CgleTexture objects was added.

Another little feature (quoting the manual): 'Image dimensions should ideally be 2^m, where m is an integer from 1 to 10 (an arbitrary limit - you can change this in the source); that is, the maximum dimension should be 1024 pixels, and the ideal height or width would be 2 raised to an integer exponent. (Height and width can be different.) If the one or another dimension is not equal to 2 raised to an integer exponent, the image will be scaled down to the next valid dimension using the GDI function StretchBlt. (The GDI StretchBlt mode can be set to an appropriate value before creating the texture.) The actual treatment of the source bitmap by the call to StretchBlt is controlled by the CgleTexture member variable m_bStretch. If it is true (the default), the image will be stretched (or compressed, actually) and the entire image will be copied; if m_bStretch is false, only a portion of the source image will be copied, and no compression will occur.'
June 2002 2.2 Another rework of the CgleTexture class again; functions to load bitmaps from resources and files were added, and the demo program was reworked.
January 2002 2.1 The major improvement this time was the elimination of separate Draw functions when drawing textured objects. A boolean value 'bTextured' was added to the normal draw functions, instead, and was set to default FALSE.
August 2001 2.0 This was a major upgrade. Texture coordinates for the basic shapes were improved, the public interface of the CgleTexture class was improved, and a number of small bugs were fixed.
1999-2000 1.0 >My first attempt at developing a Win32-specific, OOP version of Linas Vepstas' gle code. The primary benefit I aimed for was moving all memory allocation and whatever calculation possible out of the rendering loop, as well as the development of a consistent interface among the various extruded object types. I also included Kilgard's basic shapes code from GLUT, and included textured versions of each. Mirror copies of this site are still out there - a bit embarrassing, but what can one do.

Back To Top

Copyright© 2001-2018 by Bright Ideas Software®. All rights reserved.