Due date: early/mid 2017
Code name: Frogger.
Compile 64-bit version of L3DT Pro.
Finish plugins
VFW.
PCX.
Copy all updated plugins to installer.
Modify installer for 64-bit.
Run acid test batch script, and debug any problems.
Test with Sapphire.
Test mesh exporter.
Release dev build.
Keep testing!
Upload cross-platform library code with Josh H.'s fixes.
All the things!
Improve HUD text visibility
Added semitransparent background to HUD, and changed text colour to white.
Changed to using system UI font.
-
HF tools:
Make tool window appear, for first time, in top-right corner of Sapphire.
Add spin controls for radius & such
Add 'PerlinRaise' and 'PerlinLower' tools ( see request.)
Updated display of bulldozer / etc. tools.
-
Fix support for large heightfields
Move ROAM patches to CsHeightfieldTile class (requires patch size to be divisor of tile size?)
Implement dynamic loading / freeing of tiles (with re-tessellation, etc.)
Optimise triangle pool usage between tiles
Document path recording / playback.
Improve rendering of camera paths and teleport points.
Use better camera mesh (saved as zmesh?)
Add text overlay above camera teleport point.
Add support for loading arbitrary point lists (from CSV) as paths.
Use GLSL shaders to provide better terrain detail, and for fog.
Use GLSL shaders for waves, water reflection, refraction (inc. underwater view)
Use VBOs for terrain patches.
Add option for user-defined grid overlay, where user sets extents, and tile sizes. Note grid does not need to cover entire map.
Allow import & export of grid definitions.
Show grids in Sapphire.
Add option for 'snap to grid' with mouse selection tool ( see request).
Add 'select tiles' window (possibly using existing 'select area' window.)
-
-
Add pin passthrough rendering, to make it clear when a filter's output is the same as its input (i.e. map handles being passed through verbatim).
Ensure passthroughs are loaded/saved in CzFilter::Serialise and CzFilter::Deserialise (example is zg_tee, where all passthroughs are created dynamically)
Apply to script filters too.
Verify all filters (both script & plugins) set all passthroughs correctly (see 'tests/FiltersToFix.zgraph').
Update docs.
Added flags to CzFilterFactory::RegisterFilter function, including:
Modified GetProjectMap2 to allow 'options' edit of map name input pin too. If name input is disconnected, options button allows edit of map name. If pin is connected, options button says “Map name option is controlled by '[filter name]' filter connected to 'MapName' pin”.
Repeated for SetProjectMap2 too.
Deprecated GetProjectMap and SetProjectMap , which are now redundant (using new ZFF_CLASS_DEPRECATED flag).
Modified GetProjectMap2 to allow choice of creating local copy or not (previous default was yes).
Modified project.SetProjectMap2 to automatically save undo points.
Update ZG_project plugin & filter documentation.
Removed manual backup scripts from example graphs.
Reorder insane calc.HF.Exponential pins, before it's too late (also drop hOutputMap input pin).
-
Added 'Load graph…' menu item to L3DT, for opening ZeoGraph and loading file.
Added UI.EditValue filter in new 'ZG_UI' plugin.
Document!
Added UI.EditValueEx filter, for multiple values.
Document!
Add General.Wait and General.WaitTrigger filters.
Document!
Also added support for void pin types, for dataless flow control.
Added calc.HF.SquareRoot filter.
Document!
Add passthrough hMap pin to project.SetProjectMap filter.
Add UI.ComboSelector filter, for selecting from a set of values (output is int for index, AND string for value)
Add UI.MessageBox filter (simple notification, icon style is option, as combobox; prompt input only)
Document!
Add UI.YesNoQuestion filter, which returns true or false.
Document!
Add UI.YesNoQuestionSwitch filter, which passes an input variable between yes or no outputs (uses disable behaviour).
Document!
Allow external scripts &c to set input variables (i.e. the variable.xyz filters, also pins of named filters)
Use shared struct to load all API function handles in one go, to speed up plugin loading.
Line overlay over textured mesh in Sapphire when editing ( see request
-
-
-
-
-
Update 'export type list' option to include colour and bump map texture ( see request).
-
-
Add SunBurn TER import/export support.
-
Write script to bake water surface map on to texture map ( see request).
User-defined grid overlay in display, and T3D region exporter for single and multiple files ( see request).
Limited 'export selected area' option for Torque TER, where users set west & south extents, and then pick tile size (256, 512, 1024, 2048, etc.), before running regular TER exporter ( see request).
Implement 'Operations→Design map→Resize canvas' using graph/script ( see request.)
-
Added map Iterator functions, to reduce repetition in programming map loops.
Add reusable iterator support for progress (both group & direct progbox).
Add reusable iterator support for masked areas, using rect mask
Apply to converter calcs (HF→RGB, etc.), DM↔layer calcs, etc..
Apply iterator to copy area , etc.
Make auto-multithreaded version (in CMapWrap::Iterate).
Add to extension API, so it can be used in plugins!
Added exponential filter for heightmap calc (as zeofunc, and filter).
Add HF.GenMap to benchmarking results
-
Add guards to handle DM/HF size mismatch everywhere following HF selected area preview.
Add InitMap2 extension function, and filter.
Allow larger non-mosaic maps in UI.
Multithread:
calc_HF_Diff2Filter &c
Channelling erosion
Thermal erosion
Diamond/square inflation
Water table flooding (use four threads to raster simultaneously)
Alpha calculation
Perlin generator
Shadow casting
Revise atCalc_AM_image to use direct access writing of AMimg (requires mipmap update).
Fix multithreading in atCalc_AM_image, which was disabled b/c it caused crashes.
Added 'project.RegenerateWBL' script function to regenerate water body list (see 'WBL_Renergate.zs' script).
Add load and save buttons to alpha wizard (or enable presets), so that layer combination lists can be stored and recalled ( see request)
Add mask map wizard, in scheme after attributes map.
Added import support for BYTE, WORD and RGB images (uncompressed only).
Added support for internally tiled TIFF files (in addition to strips).
-
Add export support.
Add reader / writer / mosaic support.
Verify InvertY and Quality options.
Benchmark.
Add WM support (export only).
Build x64 version.
Include in installer, and formats ini.
Create me!
Implement improved blending modes in atEdgeBlender to remove streaking.
-
Modify atEdgeLeveller to support edge levelling of design map (including erosion, roughness, etc.)
Modified 'Import DM' wizard to recalculate horiz scale to preserve horizontal extents when changing down and up-sampling rates.
Ensure edit record is closed in Sapphire when mouse mode changes (and other similar cases), to eliminate 'cannot create edit record' errors ( see bug report).
Modified PROJ loader to tolerate missing settings (e.g. WrapFlag, HorizScale), as these can be picked up from maps. Warning is given instead.
Fixed installer so that zmenu extensions are installed properly (now in resources dir)
Fixed offset b/w cursor and tools in Sapphire — build pending.
Fixed initial vertical offset in PointGrab tool — build pending.
Fixed bug in L3DTio_Backup that prevented proper undo on large-area tools (e.g. bulldozer) — build pending.
-
Made L3DT check for other L3DT processes, and abort startup to prevent fighting over log / resources.
Debug 'CMosaicMapo::CloseTile warning - tile was already saved' error state ( see bug report).
Fixed bug in ZeoWrap, where combosel.GetCurSelA was incorrectly named combosel.GetPathCurSelA .
Recompiled ZG_script for L3DT Pro x64 (was out of date, and gave errors on some return values).
Modify Sapphire to log error and continue rendering when water map is incorrect size (previously would halt initialisation.) ( see bug report).
Change GetExt to get only last extension. Add new CompareExt function to handle compound extensions ( see bug report).
-
Fix screen capture to file.
-
Fix alpha map generator to include all land types in map (reported by Andrew B. via e-mail, error is 'calc_Alpha_GenMaps error - invalid alpha index in LandTypeAlphaIDBuf').
-
Extended timeout to prevent errors on startup.
Fixed error with min/max alt when resizing HF ( see thread.)
Modified CreateDir to report directory creation failures (with sys error codes).
-
Add more off-line help PDFs. (some added, see here)
-
-
Update the algorithms pages.
Document new splat map settings in materials.
Document path recording / playback in Sapphire.
|