L3DT development blog
Large 3D terrain generator

November 6

L3DT Standard Edition 15.11 is available!

Hi All,

The free Standard Edition of L3DT v15.11 is now available for download. Although many of the improvements in L3DT 15.11 are only available in the Professional and Torque editions (e.g. performance improvements for extremely large maps), the Standard Edition still benefits from a number of significant upgrades, as listed below:

Sapphire 3D Viewer / Editor

A number of users reported frustration with the mesh optimisation in the Sapphire 3D viewer, which made it very difficult to visualise and control heightfield tools during fine-scale editing. In this release, Sapphire now does a so-called 'brute force' render of the triangles around the brush tool, so that you can see every single raw vertex and triangle that you edit. You can see this in the image below, where dark line-drawn triangles are visible, showing every vertex.

Brute force triangle rendering

The heightfield tool window also now has a new tabbed interface, which allows users to more easily flip between tools and change brush settings. While I was at it, I also added 'strength' settings to all the applicable brush tools, which was a fairly common request.

Tool selection Tool settings

Other little tweaks include the ability to set the movement speed ('Position→Speed', in Sapphire menu), and keys for zooming in and out (PGUP/PGDN) for when you don't have a scroll wheel at hand.

Selected area generation

Over the years, many users have complained, quite rightly, that when editing the design map, it's too difficult to predict what what the final heightmap will look like. Previously, the only way to find out what the heightmap will look like after you edit the design map was to actually generate the full heightmap.

You can of course generate the full heightmap, but that takes a long time, especially for large maps. Worse still, if the heightfield doesn't turn out exactly as you liked, you have to go back and edit the design map, then re-generate the whole heightfield again. This could be a painfully slow cycle on large maps. In this release, you can now select an area of the design map using the select area tool, then select the 'Operations→Heightfield→Preview area from DM' menu option. This will generate the heightfield for just the selected area of the design map.

For example, I have selected the central valley in this design map:

…and then selected the magic menu item…

…whereon L3DT quickly generated the heightmap of only the valley that was selected:

2D 3D (from SW corner, looking NE)

Note that this option also allows you to generate the heightfield at different resolutions, so you can for example generate an extremely fast preview of a selected area (or the whole map) at 1/2 or 1/4 the normal heightfield resolution.

For more information, please have a look at the documentation.

Bug fixes

The major bug fixes in this release related to the usage of memory and CPU in the Professional and Torque editions. There were however an assortment of bugfixes that also applied to the Standard Edition, which you can read about in the release notes. If you find any new bugs or think I've overlooked fixing an old bug, please file a bug report in the forum or by e-mail to aaron@bundysoft.com, and I'll get right onto fixing it.

How to download

To download the update, please visit the downloads page. Please note that both v15.11 and the previous v11.11 are currently available for download, just in case there are incompatibility issues or bugs that require users to temporarily downgrade to v11.11 whilst I fix the problem. Should no problems be identified, I expect to drop v11.11 from the downloads list in a month or two.

What about L3DT Professional and Pro for Torque?

The Professional and Torque editions are not yet officially released and available for download, principally due to the extra documentation that must still be written for the new features. It should all be ready within a week or two, weather permitting, but if you can't bear to wait for the official release, you can head over to the Pro downloads page1) and grab a copy of the latest development build (v15.10 dev build 1). It is exactly the same as L3DT release v15.11, except for the version number.

Feedback & suggestions

Please let me know what you think of the new release. Comments, requests and bug reports are all welcome, as well as suggestions for the next release. Please feel free to make use of this forum thread.

End transmission

Best regards, Aaron.

2015/11/05 04:19 · aaron
2015/11/05 07:06 · aaron

August 30

Bugfix for ZeoGraph

Hi Everyone,

It seems that ZeoGraph has been broken for a little while in the Pro developmental builds. As of today, it is unbroken. Please see v15.08 build 1, which on the Pro downloads page now.

Cheerio, Aaron.

2015/08/29 07:55 · aaron
2015/08/29 07:57 · aaron

July 16

Progress on L3DT 15

Hi Everyone,

It’s been a very long time since I've posted on the progress of L3DT's next stable release. The good news is there have been a lot of bugs fixed recently, and we appear to be on track for a release later this year.

Recent bug fixes

The most recent build, L3DT Pro 15.07 build 2, has fixed what I had considered to be the last of the blocking bugs, specifically:

  1. There was a bug in the mosaic heightfield inflation algorithm that produced empty tiles in the heightfield for specific large map sizes (see bug report by Kulzarn). Surprisingly, this bug had been 'live' and seemingly unreported since 2012, when I added a correction to the heightfield generator to fix an offset with respect to the design map (see here). For heightfields of the order of 50,000 pixels in height or width, a mistake in this correction caused an offset counter to wrap around, resulting in an incorrect coordinate offset that nulled out some tiles.This did not occur at all large map sizes, so perhaps that’s why we’d all missed it until now.
  2. Whilst I was fixing the above bug, I also noticed that when saving mosaic maps at the end of large calculations, L3DT would appear to lock up. It was still running, but the user wouldn’t know that, as the application wouldn’t respond until the save completed, which could have been tens of minutes for large maps. With some digging I realised that this was due to the memory compactor (which runs in the user interface thread) having to wait on a lock held by the mosaic saving algorithm (which runs in a worker thread). Since the user interface thread was stuck and unable to process messages until the save completed, the application would appear to freeze. The fix was to add a flag to abort the memory compactor when long, lock-protected mosaic operations were in progress (mostly saving, exporting). This seems to work nicely, but we really should give it a good run of testing to make sure.
  3. There was a fault in the backup/undo plugin that threw error messages when you use a brush tool. This had been reported sporadically, but could not be reproduced. This time, with a rather late night, some good luck, and most importantly, a log file kindly provided by Kiwi-Hawk, I was able to reproduce, diagnose, and fix the fault. It occurred when the brush radius was larger than 64 and the brush was applied near to the edge of the map, such that the farthest extent of the brush was equal to or more than 64 pixels off the end of the map. Very specific, no?

Status of L3DT 15

With the above bugs fixed, I’m now cautiously optimistic that all the major features of L3DT 15 are now working as intended, including the previously troublesome dynamic memory manager. However, I think it prudent to still run for another few months of community testing to make sure there are no other problems before compiling the release build.

The log of bug-fixes since the last release back in November 2011 is now really huge, so I’d encourage any users still working with v11.11 to give the latest build a try. It should be much more stable and better performing than 11.11, and it will be better still with more users downloading and using it. If you do happen to find any more bugs, please send me an e-mail or post in the forum. Even if it’s only just a little annoyance, I’d love to hear about it. Of course, I am also most grateful to the users who have already reported bugs, especially those who took the time to provide logs or example map files, which have been most helpful in allowing me to reproduce, diagnose and fix bugs.

How to download?

To download this v15.07b2 update, please consult your sales/registration receipt for the download instructions. This is a free update to anyone with a L3DT Pro license purchased since the last release (i.e. after November 2011). If you have an older license, you can always try the new version using a free 90 day trial license.


Cheerio, Aaron.

2015/07/16 05:33 · aaron
2015/07/16 05:43 · aaron

February 28

L3DT 14.02 beta 3 is available!

Hi Everyone,

The third (and one sincerely hopes, final) beta-release of the forthcoming L3DT 14.0X release is now available for download, in both Standard and Professional editions. This update fixes a bug in the fancy mosaic memory cache manager that was causing out of memory events for very large maps (see bug report.)

This version also adds a brute-force tessellator to the 3D renderer so that the terrain is drawn at full resolution in the area near to the tool brush when editing the heightfield. This addition should give users better control and feedback when editing the heightmap:

Brute force tessellation in Sapphire.
Brute force tessellation in Sapphire.

If you have the time, I would be most grateful if you could give the new beta release a try. Users of L3DT Standard can download the beta release from the downloads page. Users of L3DT Professional should follow the link in their sales / registration receipt, or if that can't be found, send me an e-mail at sales@bundysoft.com. Users of L3DT for Torque should contact sales@bundysoft.com to gain access to the beta release.

Best regards, Aaron.

2014/02/28 04:43 · aaron
2014/02/28 04:45 · aaron

<< Newer entries | Older entries >>

start.txt · Last modified: 2016/02/25 06:54 by aaron
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Share Alike 3.0 Unported
L3DT Development Blog RSS Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki