Release 3.21 ------------ Fixed visible seams at texture borders. Fixed linker on some UNIX systems problems (thanks to Barry Tolnas.) Fixed a crash when using raytracing in headless mode. Fixed Read() and Write() methods to handle simple binary terrain read/write without using XML. Added a few optimizations and fixes from Andre Dusette (more to come.) Release 3.20 ------------ UNIX build system converted to GNU autoconf (replacing the inadequate custom build scripts of before.) Thanks to Michael Stahl for kickstarting this effort. Mac OS X developers may now choose to use autoconf like any other UNIX or they may continue to use Project Builder, frameworks, etc. Code fixes for Mac OS X from Michael Stahl. Visual Studio and Visual C++ projects cleaned up for Windows developers. Deadlock when using Demeter with Producer fixed (thanks to Bruce Clay.) Release 3.19 ------------ Support for Open Scene Graph 0.9.5. Improved support for Mac OS X (thanks to Ian Baxter.) Fixed a bug that prevented ray tracing from working when Demeter is run in headless mode (useful for line-of-sight tests, etc. on an application's server side.) Enhancements to the GDAL elevation loader. This loader now scales input data up to the nearest power of 2 rather than chopping the data as it did before. This makes it far easier to match up your terrain textures with elevation data when using this loader. Release 3.18 ------------ Support for Open Scene Graph 0.9.4 Optimized memory usage of texture masks for "splatted" detail textures. Added Visual Studio 2003 support. Visual Studio 2002 is no longer directly supported, but Visual C++ 6 is. Fixed compiler problems with raytracing support. Small code improvements. Release 3.17 ------------ Support for Open Scene Graph 0.9.2. Final fixes for gcc 3.2. Full support for TerrainLattice is once again included. There is also a new sample app showing TerrainLattice in action (it is a separate download and, as usual, the sample data for TerrainLattice is pretty silly but it does demonstrate how the lattice works - the good folks at the Combat Simulator Project seem to have better sample data for TerrainLattice.) Release 3.16 ------------ Cleaned project structure such that there is now one class per .cpp/.h file. Fixed bug in overloaded Terrain class constuctor that would leave Terrain objects unitialized (thanks to Marco Jez.) Fixed compiler problems with gcc 3.2. Release 3.15 ------------ Distribution now includes C++ projects for Visual Studio Dot Net, as well as Visual C++ 6 and UNIX'es. Dot Net runtime support and terrain paging are still disabled, but will be available again very soon. Release 3.14 ------------ Demeter has been split into separate components: the core library, elevation loaders, and texture loaders. The core library no longer has ANY dependencies other than OpenGL. Demeter is ALWAYS built as a shared object (or DLL on Windows) now. Elevation and texture loaders are now loaded on-demand when (and if) your app needs them. Temporarily, Terrain paging and Dot Net features are NOT included in this release. They will reappear shortly. If you are using these features then please wait for a subsequent release. Various small fixes, including correct handling of dynamic vertices, calculation of normals Release 3.13 ------------ This release fixes some build issues on Linux systems related to the use of libxml. Release 3.12 ------------ Demeter is now a .NET component, so it can be used from any .NET language including C#. Of course, it can still be used natively from C++ on any platform. This release includes the first beta release of the Demeter Texture Editor application. This application allows you to paint detail textures directly on a terrain's surface in a WYSIWYG way much like a paint program. This painted surface can then be loaded and used at runtime by your applications. Even though the editor only runs in Windows, terrains generated by it can be used on any platform. Added a simpler API for accessing detail textures. It is now trivial to programmatically apply detail textures to your terrains' surfaces. This opens the door for truly rich procedural texturing (using multiple detail textures.) Fixed a memory leak in the GDAL elevation file loading code. Release 3.11 ------------ Due to popular demand, support for Visual C++ 6 is reintroduced. New convenience methods on the Terrain class that allow setting the texture and elevations after construction (primarily to support the soon-to-be-released editor application.) Release 3.10 ------------ Support for Visual C++ 7 (the .NET release of Visual Studio.) Visual C++ 6 is no longer supported. Further reduction of memory usage. Added new convenience methods to the Terrain class, including the ability to set terrain elevations based on a point. Added the ability to specify what texture format will be used for terrain textures. Use the static methods on the Texture class to set these formats. Release 3.9 ----------- Numerous enhancements, including: 1) "Painter" detail textures. You can now have any number of different detail textures "painted" onto the terrain at different positions. This means you can finally have grass textures where there's grass, stone textures where there's stone, etc. Run the scripts called "runSample" (if you have OSG) or "runDetailSample" to see an example. An alpha version of an editor application is bundled in this release that allows you to paint detail textures on your terrain for use in your applications. 2) Innovative enhancements to the CLOD algorithm, spearheaded by Hugo van der Merwe. Most notably, the CLOD algorithm now handles rolling and pitching intelligently and you are now able to select the best heuristic for your application. 3) Vastly reduced memory usage. 4) Use of Demeter without SDL is now trivial. You don't have to load the GL extensions for yourself and you can use image files as you normally would (there's no longer any difference between using Demeter with or without SDL.) 5) Initial Mac OS X support, spearheaded by Randall Leeds. Release 3.8 ----------- This is purely a bug-fix release. The 3.7 release had a missing file and a bug in the Makefiles for GDAL support. These problems are corrected in 3.8. Release 3.7 ----------- Added support for direct reading of DEM and SDTS data (as well as several other types of elevation files.) Made SDL support optional (experimental.) Improved performance of terrain paging. Binary map files are no longer supported. Constructors have been added to the Terrain class that make the map compiler redundant. Getting rid of the binary .map files has also made the problem of porting to Mac OS X easier for Randall and Bruce to deal with. The map compiler still exists, but it is now only a utility for chopping up large images into sub images for use with the terrain paging feature. Release 3.6 ----------- Added procedural texture support. Simply create your own concrete implementation of the abstract class TextureFactory and you're on your way. See the file SampleTextureFactory.cpp for an example. To see the sample procedural texture, run the Viewer application with -p switch (the sample is not very visually impressive - it is meant to be a simple example.) Due to popular request, the dependency on the CommonC++ libraries has been broken. These libraries and headers are no longer required. HTTP downloading of terrains has been removed. Soon, dependencies on SDL will become optional. WARNING: Open Scene Graph 0.8.43 is NOT YET SUPPORTED. Robert has made some major changes and Demeter hasn't adapted to those changes yet. Release 3.4 ----------- Finally fixed some nagging texture bugs. Special thanks to Tero Kontkanen for pointing out exactly what was wrong. Release 3.3 ----------- Added the much requested terrain "paging" feature. See the programmer's guide at www.terrainengine.com for details. To run the terrain paging demo app (called PagingDemo) you must download the terrain paging sample data. It's a big download! Release 3.3 has been fully tested against Open Scene Graph 0.8.42 and is working fine. Release 3.1 ----------- Finally added extensive parameter checking and error handling for all media files. Updated to support API changes in Open Scene Graph 0.8.41. You will now need OSG 0.8.41 to compile Demeter. Release 3.0 ----------- Added full support for Open Scene Graph (this support is optional, so OSG is not required in order to use Demeter.) There is a new sample application called ViwerOSG which demonstrates the OSG support. See the DemeterDrawable class for details of how the integration works. Be sure you have set the OSGHOME environment variable as explained in the Open Scene Graph INSTALL instructions. Also did some minor tweaking of the quadtree culling to better handle cases where the camera is high up and looking down on the terrain. Release 2.7 ----------- IMPORTANT CHANGE NOTICE: You must change your application's threshold value or you will immediately see strange rendering artifacts with version 2.7 of Demeter. Prior to release 2.7, the detail threshold value was specified as a 3D length in screen space. Beginning with release 2.7, the threshold value is specified as the number of pixels high a block must be to avoid being simplified. In general terms, this means that your application should probably use a MUCH smaller threshold value than it used to. For instance, the sample application's default threshold value has been changed from 100.0 to 12.0. This change has been made in order to greatly optimize the speed at which Demeter tessellates the terrain. PLEASE CHANGE YOUR APPLICATION'S THRESHOLD VALUE TO A SMALLER NUMBER (try 12.0 as a default and then tweak to suit your application.) In addition to the new handling of detail threshold, release 2.7 adds a major new feature: the ability to get terrain data not only from local files, but also from remote HTTP servers. A new constructor on the Terrain class takes a URL so terrain data can be downloaded from a server.