L3DT documentation
Large 3D terrain generator

L3DT release 2.5a

Released on the 8th of June, 2007 (see announcement)

Major changes

Multi-core support

  • Read core count from process thread count, and enable multithreading by default (supports up to 8 cores).
  • Enable multithreading on calculations for terrain normals, light map and texture map.

Custom map layers

  • Support custom maps project and I/O
    • All project file I/O.
    • CMainFrame::OnOptionsFiletypes
    • CMainFrame::CheckGroupFormatsBeforeSave
    • Fix map scales
    • HTML summary
    • Update PROJ format to v1 to support custom maps (original is now considered v0).
  • Render custom maps in main view
    • Support for byte, word map rendering.
    • Changed view mode handing to use map name.
    • Support for DWORD rendering (RGBA).
    • View→Show map…(choose from combo sel)
  • Menu options for custom maps
    • File→Export→Export map… (choose from combo sel)
    • File→Close→Close map… (choose from combo sel)
    • File→Load→Reload map… (choose from combo sel)
    • File→Save→Save map… (choose from combo sel)
    • Utilities→New map layer…
  • Allow plugins to add new map layers to the project with project_CreateMap function.

Improved brush tools

  • Added visual display for brush radius in main window.
  • Added brush tool for attributes map.
  • Added brush tool for BYTE maps.
  • Added brush tool for RGB maps (LM, TX, custom).
  • Added thermal erosion brush to HF tools.
  • Added cliffs brush to HF tools.
  • Replaced individual tool icons on toolbar with one 'edit active map' icon.

Improved texturing

  • Add blending/anti-aliasing support to texture generator.
  • Add blend radius parameter to land types, land type editor, CLI file I/O.
  • Handle AM/TX ratios in texture algorithm.
  • Add 'max anti alias' in TX wizard.
  • Abolish per-pixel land types generator (use high-res AM instead).
  • Enable multi-cast shadows (4x by default).
  • Add 4x res texture layer to rock types, with min res of 32x, for ultra high-res textures.
  • Pre-load all textures/bump-maps of project climates at beginning of normals/light/texture mapping calcs.

Minor changes

User interface tweaks

  • Add 'Operations→Heightfield→Edit in 3D' option (using Sapphire).
  • Allow image drape to overlay other maps in the project.
  • Allow 2^n+1 sizes in Export to Atlas UI.
  • Uncheck by default the 'split map into tiles' option in the export wizard, regardless of whether the map is a mosaic or not.

File I/O

  • Set PixelsPerMetre in FreeImage formats (BMP, JPG, PNG, TGA).
  • Set DPI in CxImage formats (PCX).
  • Added RGBA support for TGA format.
  • Write .proj and .def.xml files to log when loading.
  • Added support for patching settings using '.patch.txt' files, with simple set/del syntax.
  • Add mosaic export support for PCX.

Calc plugins


  • Add 'blank heightfield' algo option.
  • 'Hot loading' of plugins from command line, without requiring restart.

Plugin API

  • More functions (core):
  • More functions (via zeofuncs):
    • application.GetExeDir
    • application.GetIcon
    • settings.GetPresetsList
    • project.CreateMap
    • project.LoadProject
    • project.SaveProject
    • project.SaveProjectAs
    • project.SaveProjectAsUI
    • classes.landtype.GetTexturePixelByID
    • settings.GetPath

Bug fixes

  • Fixed initial enable state for format options button in mosaic wizard (see this thread).
  • Fixed loading of water body list (this had broken delete water body tool.)
  • Fixed export wizard when exporting mosaic texture.
  • Fixed message for out-of-memory errors, and make error box modal.
  • Fixed title in 'file→save→active map' (it said 'save map map as')
  • Fixed heightfield import before a project is loaded (I had skipped init of default map types).
  • Call ExtShutdown in plugins before closing app, to prevent Sapphire from crashing when user closes app window.
  • Use try-catch statements for all plugin member functions (e.g. ExtLoadMapFile).
  • Use try-catch statement for threaded calls to zeolite extension functions.
  • Fix typo in 'Initialised OK' message when initialising mosaic.
  • Fix export selected area menu enable.
  • Fix xmax/ymax edges in atExportArea plugin.
  • Fix flood tool to allow flooding with negative water levels.
  • Don't use mosaic swap map when re-sizing (and export resizing) maps in L3DT Standard edition!
  • Fix deletion of arglists in zeofunc_ExecuteThreaded API call.
  • Fix filename bug in mosaic tile export in L3Dio_RAW_HF


  • Unify GG & Bundysoft versions, using switchable activation modules.


  • Updated walkthrough.
l3dt/history/v2.5a.txt · Last modified: 2017/08/31 04:39 (external edit)
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki