L3DT documentation
Large 3D terrain generator

To-do list for L3DT release 2.5

Due date: April 2007.

Last updated: aaron 2007/04/02 00:06

Feature list

User interface

Tools

  • DONE Added brush size/shape to DM paint tool (last used value is remembered).
  • DONE Add copy, paste, select all, and deselect area to edit menu.
  • DONE Added 'Edit→Select area' option (for copy, paste, export).
  • DONE Enable water flood tool and water body delete tools for mosaic maps.

Display

  • DONE MipMap main window display, for faster rendering of large mosaics.
  • DONE Threaded map rendering, with cancel button.
  • DONE Added view shortcuts (1=DM, 2=HF, etc. '~' for cycle.)
  • DONE Added 'View→Show map area' option.

Menu options

  • DONE Operations→Heightfield→Filter (diffusion)
  • DONE Operations→Heightfield→Fractal inflate
  • DONE Operations→Alpha maps→Alpha express
  • DONE Operations→Design map→Resize design map
  • DONE Added climates to 'climates' menu, allowing direct edit.

Other

  • DONE Cancel button in progress box turns to 'Really?' button after 1st click, requiring 2nd click. This avoids accidental cancellation.
  • DONE Added 'Export to Atlas' menu option and dialog (note: requires Torque plugin.)
  • DONE Added move up/down buttons to plugin manager.
  • DONE Check for changes in extension dialog before asking for reset.
  • DONE Enable wizard presets in standard edition.
  • DONE Beep when calc queue is completed (off by default, enabled 'Settings→Local settings', then 'Calc→AutoComplete→BeepWhenDone').
  • DONE Remember last used settings in image drape.

Algorithm changes

  • DONE Improved accuracy of shadow mapping with light divergence & multi-casting (L3DT Pro only).
  • DONE Allow re-sizing of mosaic heightfield.
  • DONE Stronger heightfield erosion.

Parallel multithreading

  • DONE Created thread manager.
  • 'Basic' parallel multithreading:
    • DONE calc_LM_lighting — to be revised in v2.5a
  • 'Better' parallel multithreading (via threadman):
    • DONE calc_TN_GenMap
    • DONE calc_TX_GenMapPro
  • DONE Use CCriticalSection lock for Get/SetPixel in CMosiacMap when tile allocation is changed.
  • DONE Use CCriticalSection lock for loading of textures/bump maps in CTexLayer (needs more testing).

File I/O

  • DONE Make re-size on export create a temp mosaic (uses less RAM.)
  • done Option to nuke temp directory on close ('Local→File→DeleteTempDirOnExit') - on by default.
  • DONE Switch L3DT's temp dir to subdir of TEMP environmental variable (by default, can be changed).
  • DONE Made option to force MinAlt/MaxAlt in HF image import to apply to 0→255 greyscale range, rather than Imin→Imax range from image. Option is at 'Settings→Local settings→File→Import→Image→UseGreyscaleRange'.
  • DONE Allow other file types to open from MRU (RUN, DEF.XML, HFF, etc - like proc cmd line).
  • DONE Changed summary file extension back to HTML.
  • DONE Removed RLE from WMF.
  • DONE Re-used WMF for TWM (that's one less format!)
  • DONE Remove mosaic sub-sample code (replaced by mipmapping).

Bug fixes

  • DONE Debugged prog display on erosion routine for odd sizes (256×163 design maps, with mosaic HF tile size of 1536.)
  • DONE Fixed bug in resize code that called GetMinMaxScale on non-HF/WM maps (see thread.)
  • DONE Fixed overlay of plateaux on map edges.
  • DONE Fixed resizing of non-square maps.
  • DONE Fixed path handling when land type textures are on a different drive.
  • DONE Fix reported map size in light/texture wizards.
  • DONE Fix lininterp pixel access in shadow calc (see this post).
  • DONE Fix high-res mipmapped drape (thanks: Leon.)
  • DONE Fix preservation of extents HF resizing (was preserving scaling instead.)
  • DONE Redraw design map after 'Operations > Design map > Generate from HF'
  • DONE Fix mip-map bounds checking in CMapWrap::SetPixel.
  • DONE Fix tool view-mode checking (DM, WM, etc.)
  • DONE Fix split to mosaic.
  • DONE Fix bug in mosaic wizard pane (see this thread.)
  • DONE Debug atFilterAM on climates other than temperate.
  • DONE Add more hacks to make mosaic HF/WM work in L3DTVi2.
  • DONE Fix offset and null x-max, y-max edges in import DM.
  • DONE Fix refresh DM of when using design map schemes dialog.
  • DONE Fix DM resize (see this thread)
  • DONE Fix shadow offset with high-res normals/light-map.
  • DONE Fix slow speed when generating AM with a DM (see this post)
  • DONE Fix incorrect climate selection when no AM present (see this post)
  • DONE Fix black lines in light map/texture (see this post).
  • DONE Fix alpha layer depth selection in L3DT SE.

Other

  • DONE Move settings to %APPDATA% (for non-admin privileges) .
  • DONE Made settings more easily transferable between versions.
  • DONE Added logfile link in start menu.
  • DONE Added shell file associations for PROJ, MMF, ZEO, HFF, HF2, HFZ, TER (optional), BT (optional).
  • DONE Made 'L3DT for Torque' version.

Plugins

API

  • DONE Allowed plugins to add functions to L3DT.
  • DONE Allowed plugins to add menu options to L3DT.
  • DONE Allowed L3DT to dynamically add zeolite functions.
  • DONE Added ExtGetApiVersion to CExtAPI.h.
  • DONE Added various API functions (see change log.)
  • DONE Catch exceptions thrown in plugin functions.
  • DONE Remove MFC dependence of CExtAPI (not derived from CObject, doesn't use AfxMessageBox)
  • Threading:
  • DONE Made VarID_Climate, VarID_LandType and VarID_vector3f editable by var_EditUI

C++ wrapper classes

  • DONE CzVar
  • DONE CzList
  • DONE CzStr
  • DONE CzMap
  • DONE CzFormat
  • DONE CzComboSel
  • DONE CzProgBox
  • DONE CzBuffer
  • DONE CzFunc
  • DONE CzColour

File format plugins

Calculation / other plugins

Installation

  • DONE Allow plugins to be installed by drag-n-drop on L3DT icon (parse shell commands).
  • DONE Allow plugins with '.zeo' extension to be installed by double-clicking (shell file association)

Next release

» Release 2.5a »

 
aaron/todo/l3dt/v2.5.txt · Last modified: 2017/08/31 04:37 (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