====== Dev plan for L3DT release 2.5b ====== Due date: 7th of November 2007. ===== Major features ===== ==== Replace L3DTVi2 with Sapphire ==== * {{:common:done.gif|DONE}} Add mosaic mip-mapped texture support to Sapphire. * {{:common:done.gif|DONE}} Add auto texture LOD management to keep tex mem below threshold. * {{:common:done.gif|DONE}} Disable L3DTVi2 compatibility hacks in L3DT. * {{:common:done.gif|DONE}} Remove L3DTVi2 from installation package. * {{:common:done.gif|DONE}} Update walkthrough to replace L3DTVi2 reference with Sapphire. ==== Compressed heightfield files ===== * {{:common:done.gif|DONE}} Use of compressed heightfield files (hfz) as default. ==== Spring import/export plugin(s) ===== * {{:common:done.gif|DONE}} Created [[bundywiki>plugins:fileio:L3DTio_Spring|L3DTio_Spring]] * {{:common:done.gif|DONE}} Created [[bundywiki>plugins:fileio:L3DTio_SMT|L3DTio_SMT]] (and SSE2 version) * {{:common:done.gif|DONE}} Created [[bundywiki>plugins:fileio:L3DTio_SMF|L3DTio_SMF]] * //See [[bundywiki>plugins:fileio:L3DTio_Spring|L3DTio_Spring]] for more to-do items.// ==== Parallel multithreading ==== * Multithread calculations: * {{:common:done.gif|DONE}} calc_TX_GenMap * {{:common:done.gif|DONE}} calc_TN_GenMap * {{:common:done.gif|DONE}} calc_LM_lighting (redone with new model) * {{:common:done.gif|DONE}} Make threadmanager bomb-out when tile error occurs in multithreaded calc. ==== Undo and restore points ==== * {{:common:done.gif|DONE}} Create [[bundywiki>plugins:fileio:L3DTio_Backup|L3DTio_Backup]] plugin. * {{:common:done.gif|DONE}} Add 'backup active map' option. * {{:common:done.gif|DONE}} Add 'backup selected area' option. * {{:common:done.gif|DONE}} Nuke undo stack when saving project, or when closing project. * {{:common:done.gif|DONE}} Show progress when reverting map. * {{:common:done.gif|DONE}} Added backup/restore to Sapphire. * {{:common:done.gif|DONE}} Add copious error reports & log writes. ===== Minor features ===== ==== Brush tools ==== * {{:common:done.gif|DONE}} Added bulldozer tool to Sapphire (using [[bundywiki>plugins:calc:atRoads|atRoads]] plugin). * {{:common:done.gif|DONE}} Added smoothing tool to Sapphire. * {{:common:done.gif|DONE}} Added Perlin noise tool to Sapphire. * {{:common:done.gif|DONE}} Auto-open editor when first making blank HF or DM. * {{:common:done.gif|DONE}} Add double-click info for BYTE, WORD, 24bit and DWORD maps. ==== File I/O ==== * {{:common:done.gif|DONE}} Added 'File->Import->Custom map layer...' menu option (TODO: add userguide entry). * {{:common:done.gif|DONE}} Update RUN batch processing to use new '.def.xml' map definition files. * {{:common:done.gif|DONE}} Allow heightfield mosaic import in import wizard. * {{:common:done.gif|DONE}} Added greyscale->RGB, RGBA->RGB and RGB->RGBA conversion support for loading images in [[bundywiki>plugins:fileio:L3DTio_FI|L3DTio_FI]]. * {{:common:done.gif|DONE}} Added InvertY option and RGB support to [[bundywiki>plugins:fileio:L3DTio_PCX|L3DTio_PCX]]. * {{:common:done.gif|DONE}} Add mosaic support for [[bundywiki>plugins:fileio:L3DTio_DDS|L3DTio_DDS]], and include with installer. * {{:common:done.gif|DONE}} Added gzip support to [[bundywiki>plugins:fileio:L3DTio_AMF|L3DTio_AMF]], and set AMF.GZ to default AM format (it's smaller than PNG). * {{:common:done.gif|DONE}} Dynamically generate format list in import wizard dialog from the actual format list for the heightfield (was using hard-coded format list before). * {{:common:done.gif|DONE}} Added Wavefront OBJ support with [[bundywiki>plugins:fileio:L3DTio_OBJ|L3DTio_OBJ]]. * {{:common:done.gif|DONE}} Added support for import of super-large single TER/BT/HF2/HFZ files, which are too large to fit in memory (auto-split to mosaic). ==== User interface ===== * {{:common:done.gif|DONE}} Added res slider to 'design map size' wizard. * {{:common:done.gif|DONE}} Revise the [[l3dt:userguide:climates:ltedit:pane2|parameters pane]] of the land type editor. * {{:common:done.gif|DONE}} Update to XP UI theme. * {{:common:done.gif|DONE}} Update status info to include BYTE/WORD/24-bit/DWORD maps. * {{:common:done.gif|DONE}} Rebuild 1/2/3/4/etc hotkeys for viewing maps in main window. * {{:common:done.gif|DONE}} Allow re-binding of keys in Sapphire. * {{:common:done.gif|DONE}} Add indexed palettes to byte map rendering ('view->indexed palette...'). * {{:common:done.gif|DONE}} Modeless and auto-updating dialog box for map selection. * {{:common:done.gif|DONE}} Added 'RGBA alpha means opacity' flag in view ([[http://www.bundysoft.com/phpBB2/viewtopic.php?p=4339#4339|see here]]). * {{:common:done.gif|DONE}} Revised alpha map settings wizard somewhat, and added a presets bar (as with most other wizards). ==== Other ==== * {{:common:done.gif|DONE}} Accelerate TX anti-aliasing by adding SkipSize. * {{:common:done.gif|DONE}} Add support for [[l3dt:userguide:extensions:manager#make_global_private|global/shared plugins]]. * {{:common:done.gif|DONE}} Add MinAltFlag & MaxAltFlag to climates, so that we don't have to use crazy values like 1E10 to indicate no alt range. * {{:common:done.gif|DONE}} Default to 2x mipmaps (was 4x) --- //needed for Sapphire megatextures.// * {{:common:done.gif|DONE}} Disable shadow multi-casting for far off-axial light directions (10deg threshold) --- //**Re-test!**// * {{:common:done.gif|DONE}} Converted all AM calc functions to use ushort arguments instead of shorts (affected [[bundywiki>plugins:fileio:L3DTio_FI|L3DTio_FI]] and [[bundywiki>plugins:calc:atFilterAM|atFilterAM]] plugins). * {{:common:done.gif|DONE}} Allowed plugins to be disabled without throwing message on load (use CrashFlag instead of EnableFlag for crash monitoring). * {{:common:done.gif|DONE}} Store alpha maps in project map list. ==== New plugins ==== * {{:common:done.gif|DONE}} [[bundywiki>plugins:calc:atRoads|atRoads]] (provides bulldozer tool in Sapphire.) * {{:common:done.gif|DONE}} [[bundywiki>plugins:calc:atRoads|atRotate]], for rotating/mirroring maps. * {{:common:done.gif|DONE}} [[bundywiki>plugins:calc:zeoImage|ZeoImage]], for compositing images, etc. ([[http://www.bundysoft.com/phpBB2/viewtopic.php?p=3425#3425|see request]]) * {{:common:done.gif|DONE}} [[bundywiki>plugins:calc:ZeoWrap|ZeoWrap]] * {{:common:done.gif|DONE}} [[bundywiki>plugins:fileio:L3DTio_Atlas2|L3DTio_Atlas2]] --- Beta only. * {{:common:done.gif|DONE}} [[bundywiki>plugins:calc:atRainMaker|atRainMaker]] --- Alpha only. ===== Plugin API ===== * More functions: * {{:common:done.gif|DONE}} Added [[zeolite:functions:map_LinInterp]] * {{:common:done.gif|DONE}} Added [[zeolite:functions:map_GenMipmaps2]] * {{:common:done.gif|DONE}} Added [[zeolite:functions:map_ClearMipmaps]] * {{:common:done.gif|DONE}} Added [[zeolite:functions:map_GetMipmapResStep]] * {{:common:done.gif|DONE}} Added [[zeolite:functions:map_GetMipmapMaxLevel]] * {{:common:done.gif|DONE}} Added [[zeolite:functions:map_GetMipmapLevel]] * {{:common:done.gif|DONE}} Added [[zeolite:functions:project_CreateMap]] * {{:common:done.gif|DONE}} Added [[zeolite:functions:project_GetOrCreateMap]] ===== Bug fixes ===== * {{:common:done.gif|DONE}} Check map types when saving PROJ (if un-loaded, use default type) * {{:common:done.gif|DONE}} Fix squares in high-res attributes map ([[http://www.bundysoft.com/phpBB2/viewtopic.php?t=677|see forum thread]]). * {{:common:done.gif|DONE}} Fix auto-update of mipmaps in SetPixel. * {{:common:done.gif|DONE}} Fix CPU throttle on mipmap generation. * {{:common:done.gif|DONE}} Fix shadow-casting for axial light orientations. * {{:common:done.gif|DONE}} Disabled some more menu options when calculations are in progress. * {{:common:done.gif|DONE}} Fixed 'blank heightfield' option for mosaic maps. * {{:common:done.gif|DONE}} Fixed tile max altitude bug in [[:libhfz|libHFZ]] and [[bundywiki>plugins:fileio:L3DTio_HFZ|L3DTio_HFZ]]. * {{:common:done.gif|DONE}} Remove non-existent projects from file list. * {{:common:done.gif|DONE}} Fix exception in water map rendering (with water table) * {{:common:done.gif|DONE}} Change reg usage to allow non-admin usage after activation (this is a fix for Vista). ====== Next release ====== >> [[l3dt:plan:v2.6|Release 2.6]] >>