====== L3DT release 2.5a ====== Released on the 8th of June, 2007 ([[bundynews>l3dt:ann:v2.5a|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 '[[l3dt:userguide:tools:activemap|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. * Created [[bundywiki>plugins:fileio:L3DTio_BigBitmap|L3DTio_BigBitmap]] * Added support for patching settings using '.patch.txt' files, with simple set/del syntax. * Add mosaic export support for PCX. ==== Calc plugins ==== * [[bundywiki>plugins:calc:atCalc_FFT|atCalc_FFT]] * [[bundywiki>plugins:calc:atCalc_HF_Thermal|atCalc_HF_Thermal]] * [[bundywiki>plugins:calc:atCalc_HF_Terrace|atCalc_HF_Terrace]] ==== Other ==== * Add 'blank heightfield' algo option. * 'Hot loading' of plugins from command line, without requiring restart. ===== Plugin API ===== * More functions (core): * [[zeolite:functions:WriteToLog]] * [[zeolite:functions:filesel_InitFS]] * [[zeolite:functions:filesel_GetFilename]] * 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 ([[http://www.bundysoft.com/phpBB2/viewtopic.php?t=545|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 [[bundywiki>plugins:general:atExportArea|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 [[bundywiki>plugins:fileio:L3DTio_RAW_HF|L3Dio_RAW_HF]] ===== Activation ===== * Unify GG & Bundysoft versions, using switchable activation modules. ===== Documentation ===== * Updated walkthrough.