My View David's view on anything and everything…


WIP Import Export

The next TerreSculptor build update should be available some time in July.

I am currently working on improving the area of common file format import and export for the file types of BMP, GIF, JPG, PNG, and TIF.
Among the improvements will be support for more sub-formats including BMP and TIF compression, additional JPG sub-formats, the handling of larger image files, plus additional pixel formats where applicable including those such as 16-bit grayscale, 48-bit RGB (16bpp), 64-bit ARGB (16bpp), 32-bit grayscale float, 96-bit RGB float (32bpp), 128-bit ARGB float (32bpp), etc.

As with all things in TerreSculptor, development of these features will take some time and testing, as I do not use any third party libraries or dlls, and write all of the source code for every class and feature myself.
There are a small number of graphic file format libraries available, but they all have at least one of these limitations: it is covered under a GPL/GNU/other restrictive license; it is covered under a currently no-fee commercial license with the disclaimer for option to change the license (search the Unisys LZW patent that affected the use of GIF for what is likely to happen in these cases); or it carries a high license fee for commercial use which would require that the retail version of the TerreSculptor software be higher and pass this cost onto everyone who purchases a licensed copy.

After these file format improvements and the corresponding build release, the next feature to be improved will be the Noisemap Generators' deep multi-threading, and Noisemap dialog user presets save/load.


Tagged as: , No Comments


The latest TerreSculptor build for 2013-06-08 is now available for download online.

This build release has a long list of completed features, bug fixes, and a few new features.
See the build notes on the wiki for the complete list.

There has been some re-arranging of the application function tabs, including changing the tab order, moving the Planner onto the Layout tab, and the renaming of the World tab to the Terrain tab.
The Terrain tab will allow for more control over the terrain's properties, colorsets, layers, and the terrain object stack.

Currently and over the summer I am working on getting all of the partially completed features fully working.

This includes major features such as:
- TerreSculptor .TSW file open and save, so that you can actually save a file of the project you are working on.
- The Terrain tab features and especially the Terrain Stack, which will allow for the creation of substantially more complex terrain systems, and the Terrain Layers, which will allow for creating complex layer masks (aka weightmaps using extractors) that can be visually viewed on the terrain itself.

And some minor features such as:
- Deep multi-threading the noise generators.
- Terrain region selection tools.
- User lights.
- Layout planner meshes and shapes.
- Improvements to the Preview system.
- Full bug fix for proper handling of all terrain sizes, see the 255 sized terrain bug from before.
- etc.

The following Modifiers are still only partially completed: Size, Displace, Offset.
The following features are still under development: additional Erosion Modifier types, Terrace Modifier, additional Extractor/Layer types, additional Noisemap Generator types, and the powerful Multi-Noisemap Generator.

I will try to push out the next few builds with a shorter release cycle.  This latest build was a six month release because it required some significant changes and organization to some of the base code which required many hundreds of hours to complete.

A large number of exciting features are still planned for future builds and future versions:
- 32768 x 32768 size terrains.
- The ability to work with terrains as 16-bit heightmap, 32-bit floatmap, or floating point tesselated mesh.
- Object picking tools.
- Terrain painting tools.
- Spline-based tools such as roads, rivers, overhangs, caves.
- Full terrain layer texturing.
- And much more.


Filed under: TerreSculptor No Comments

Bug Note 255

There is a bug in the latest release for 2012/12/10 of TerreSculptor that affects a number of modifiers when using a terrain heightmap that has a dimension of 255.
For example, Altitude, Mirror, and a few others will error.
An updated build with this bug fix will be released soon.


Filed under: TerreSculptor No Comments

Mar 2013

Some of you may have noticed that it has been about three months since the last TerreSculptor build release.
I have been hard at work on its development, fixing numerous bugs, and refactoring code.


For most of this year the build releases will be more erratic, sometimes every few weeks, sometimes every few months.

As the application has grown in size during its development, it is currently ~1/2 million lines of source code, I find that I have been spending more time maintaining and refactoring the code than getting things done.

So I am spending some time re-organizing the classes and fixing up some of the class and coding standards, in order to make it easier to add the massive list of thousands of new future features that I have planned.

I am also currently working on getting all of the partially-completed sections of the software to their completed state, so that late this year I can move on to the upgrading of the 3D viewport renderer, which I will discuss in more depth in a few months.

These partially-completed sections include some of the file formats, noise generators, mask/weightmap generators, erosion and other modifiers, the World Stack, and the application's file format open/save.


I have decided on a few changes that will be coming soon to the software.

- Builds up to 2012-12 are using .Net 3.0, all builds starting this year will be using .Net 3.5 and eventually .Net 4.

- Windows XP support will be phased out soon as I wish to utilize many of the new OS user interface controls and features available in Windows Vista and 7.

- x86 32-bit support will be phased out soon since the main editor will be updated later this year to support 32768-size heightmaps versus the current 4096-size heightmaps, which require significantly more memory than what a 32-bit process allows, so an x64 application and x64 OS will soon be the only one available.



Filed under: TerreSculptor No Comments

Gooey Themes

Today I revisited the idea of adding GUI* color themes for the TerreSculptor interface.

I wrote basic theming code in the software during its early development in order to support the default grey color theme that is common to many paint applications.  Recently I have taken another look at adding a dark color theme that follows common 3D applications.  This has required some minor changes to the existing theme code in order to support a few additional GUI object color entries.

TerreSculptor will most likely support at least three color themes: standard Windows Theme, paint application Grey Theme, and 3D application Dark Theme.  The Dark Theme will initially not be available on all dialogs or all dialog controls, as it will take some time to integrate the theming on all dialogs.

A GUI theming poll and discussions is in the forums in the Feature Requests area.

* GUI = Graphical User Interface


The original default paint software Grey Theme:

Grey Theme

The initial test 3D software Dark Theme:

 Dark Theme


Filed under: TerreSculptor No Comments

Recent Posts