Spam Me Not

After spending the weekend up camping, upon return I’ve converted the community forums over to SMF rather than phpBB. Although I like the look of phpBB better, it’s just too damn targeted by bot spammers. Over the two days I was gone, more than a dozen and a half bots registered accounts, all of which had to be manually deleted. It’s just not worth the trouble, especially since SMF is much less targeted and very full-featured.

I’m extremely excited about the beta, but there’s a good bit of work before it’s ready! I’m going to try to keep myself to bugfixes and needed enhancements only rather than new features until the Beta-1. We’ll see how well I do 😉

Macros as first-class citizens

Feature-creep is inevitable in software development. Minor enhancements turn into major additions, and I’m probably more guilty of it than most developers — but when you see the great potential of just going a step further than you are now, it’s hard to hold back.

Anyways, all of that is just to say that Macros have taken another step forward with Alpha-4 to reaching their potential as “Just a bit less than a real device”. You can now supply a 32×32 bitmap for your macros that will be displayed in the toolbar for it. Speaking of which — Macros get their own tab on the toolbar for more convenient library loading, as well as being able to put your more favorite macros on the toolbar itself for quick access, just like the other devices.

I’ve always wanted macros to be traded and popularized much more than they are — right now there are some good ones out there but they’re not exposed to a large enough group of people. If possible, I want to allow a seamless distribution system — which is to say, that perhaps from the Macro Library dialog you can access a macro library sitting on the WM website that contains all submitted macros from various authors, perhaps ranked/commented on for usefulness by others.

If anyone has any experience with web-based file library type systems as described above, please contact me at

Road to Beta

With the release of A-3, I’m trying to tie down all of the loose ends in preparation for the beta testing. There will be one more alpha release that will attempt to get things to the proper “Beta state”.

The next week or two is probably going to be dedicated to eradicating bugs and undesired behavior, so there won’t be too many interesting things to show most likely. But my goal is that the Beta test will start around the end of august / start of september.

Alpha-3 Release to the Testers, and another Teaser image

A3 will be released in a short moment out to the testing team. Among the new things it implements includes:

  • Too many Layout Mode Enhancements to list..
  • Sortable Tabbed Toolbar w/ “Favorite Devices” tab
  • Many more RGB devices, and RGB macro support

The last one is really cool, because it allows you to abstract away the creation of a texture map for the terrain into a simple drop-in device where you can just pick some colors, set a couple options, and be good to go.

Here’s the output from inside of WM of one of the included RGB macros, aptly named “Simple Coverage”. Imagine what complicated coverage will look like. 😉


Or, cropped a bit and converted to sepia tones, this:


A quick note

Alpha-3 release should be coming along this week.. lots to do, but it’s been a while since the testers had a chance at anything new.

On a seperate note, although I definitely love hearing feedback/comments on the blog, it might be best to hold speculation in check about what Layout mode can/can’t do. It will be able to do some stuff you guys dont expect, and I don’t want it to not be able to do things that you might be. Wait and find out.. 😉

Layout Mode Screenshot

Sorry for the lack of updates recently, they have reflected a bit of a hectic period that has limited WM development time. Things are easing up at the moment, however, and getting back on track.

Anyways, as promised a while ago, here’s a first screenshot of part of the Layout Mode UI:


A bit of an explanation:

Layout mode lets you “lay out” terrain features, filter mask areas, etc with vector graphics. In the shot above, WM has Layout Mode activated, and you are viewing a layout in the view. The current layout has two shapes defined; a sketchline and a polygon. Each has a falloff profile defined, and the sketchline has profile vertices setup to adjust the height of the canyon as it goes.

Overlayed underneath the layout shapes is the output of the layout generator. Or more specifically, the result of the layout generator after other nodes such as noise and erosion have been combined. This ability lets you “draw” your shapes into a layout generator at the beginning of your network, and see the results from a node near the end; after the whole pipeline has been applied to it. This is a pretty cool ability, and even works if you overlay an RGB net atop the terrain, which is rather neat.

Other neat stuff has also been added since the last update, such as a sortable tabbed toolbar with a customizable “favorite devices” tab, Output Ports (allowing you to wire from one output to multiple inputs without using a splitter), and more. Hopefully A-3 will make it out to the test team finally relatively soon, which is starting to represent a feature-complete status for a good chunk of Pro.

Progress Report

I just realized the other day that it’s been a while since the last diary post, so I figured I would update folks on the progress on Pro.

Unfortunately I had to spend all of last week working on things other than World Machine. But with that out of the way, progress has resumed.

Right now a lot of small things are being implemented with the aim that larger-group beta testing will be able to begin once layout mode has begun to be finalized and alot of the Pro devices are in.

No nifty pictures this time around; but the next progress report will probably show some of Layout Mode in action. Alpha-3 is the next alpha release; There will probably but not certainly be an Alpha-4 release and then it’s on to Beta.

If you’ve emailed me about joining the beta testing team, you’ll recieve more information sometime in the next month or so, depending on how things progress.

Workin’ with colors

I’m working on getting the feature set of Layout Mode finalized for the end of alpha testing and the start of beta. It’s getting fairly close! Probably within the next week or so I’ll make a post showing off some of Layout Mode.

In the meantime, I’ve also enhanced a few other areas. RGB support has been added to several useful devices such as the Combiner, Bias/Gain, etc, to facilitate working better with RGB imagery. When combined with the Lightmap Generator, you can create some pretty cool images.
Remember this blog entry? Here’s the same scene enhanced a little bit with some fractal noise added to the colormap, and a lightmap multiplied into it. Note that all of the lighting here has been baked into the texture; no vertex lighting need be done.

And one more, this time using just an RGB network. It’s also only a 512×512 terrain, so it’s a bit rougher:


Now, for digital artists using dedicated terrain renderers such as TG, the RGB support is of limited value since it mostly is duplicating functionality found in your renderer. For general purpose renderers, creating various surface color/surface maps in WM and then importing as texture maps is a godsend — and for game developers one way or another it’s a necessity. So although the RGB stuff started as just a fun experiment, the more I play with it the more convinced I am of its powerful functionality.

Exclusive New Device Sneak Peek

Alpha-2 went out to the testing group late last week. The GUI is getting closer to final quality, although there’s still a few huge things left to get done.

Functionality-wise, for Pro there is of course a slate of new devices that will make an appearance. I want to talk briefly here about one of the more exciting — and fundamental — ones.

The Spectral Combiner

The Spectral Combiner has multiple purposes. I’m going to talk right now about the first purpose (which is actually arguably the lesser purpose): as a very powerful companion for the regular Combiner.

Essentially, what the SC allows you to do is mix and match two terrains on a frequency basis. The best way to think of “frequencies” in a heightfield is that low frequencies correlate to slow, rolling changes in the terrain, whereas high frequencies are the sharp detail of the terrain. The SC allows you to average together the input terrains differently for different frequencies. The concept can be a mind-bender, so a better way to understand it is to look at the example image below and follow along.

(Click the thumbnail for full image)

Source A is the the result of some quick sketch lines I drew in Layout mode to create a mountainside. It looks roughly like a mountain but is certainly lacking in realism.

Source B is a perlin “billowy” style fractal.

The Spectral Combine A+B image shows you the result of a combination that draws from Source A for the low frequency data, but brings in Source B for the mid and high frequencies. The result is a terrain that follows the guiding contours of Source A, but has the details of Source B — it’s as if the major “mountain lumps” in source B just happened to be in the exact shape we specified. It’s a little hard to notice in this reduced size image, but the ridges of the mountain in Source A have been specifically damped out and are no longer razor-sharp, and won’t cause the dreaded “sawtooth” aliasing along the ridges.

With a little bit of erosion, the end result of the drawn sketch shapes is a quite realistic mountain! And even with this we started with a pretty crude approximation to a mountainside — with some tweaks to Source A it would be another leap better yet.

How is this any different than a normal combiner?

Check out the images of the normal combiner set to “multiply” mode, and the eroded version. The result isn’t really anything like what we want. You can pretty easily see that Source A was simply masking Source B. Areas that are low in Source A are low in the result, but areas that are high aren’t necessary high — our gradually increasing slope moving up the hillside is lost. Using “average” mode doesn’t fix the problem, and neither does erosion.

This is just one of the uses of the new Spectral devices. There are several other exciting things you can do with the control it gives you. I’m not going to tip my hand just yet though. 🙂

Terrain Types and Macros

There’s been some talk lately on the forums about creating a library of terrain types in the form of macros.

This is something that I’ve wanted for a long time; I think it would be immensely useful to have a standard set of macros that can help move things upwards one large level of abstraction when putting together a terrain. There are really three things you need to be able to do:

  • Specify the distribution of the terrain types where you want them
  • Transition from one type of terrain to another in a manner that looks proper; this is a much more difficult problem than you might expect.
  • Have each terrain type macro produce a realistic non-geographically-specific output for its type ie that macro alone will produce endless mountains or dunes or what have you with no large scale variations.

How do these pieces fit together?

The first point is something that will probably be much easier in WM Pro. Right now, you can procedurally control the large-scale location of things, or import a bitmap that has your own placement map in it. But there’s no easy way to go from the single greyscale map to a terrain type mapping. Some modifications to the Height Splitter device would provide an easy way to dice up a single placement map into individual bands of coverage strength that seamlessly mesh.

The second point is really quite difficult. A naive blending scheme between terrain types just doesn’t look very good. There are various degrees of hacks possible on this subject though; more musings on that later.

The third point is not that hard: It’s just the magnitude of the task of creating good macros for each geological terrain type.
Is there any interest in forming a “task force” for the creation of this type of terrain macro package? If so, I would be willing to open up a new subforum on the WM forums for discussion of all of all things related to this task. The goal woul d be the eventual creation of a WM Terrain Type library that could be “bolted together” with some possibly new devices to produce realistic terrain without having to do extreme amounts of network wizardry; this could even tie into the Wizard system that was mentioned as a possibility earlier.

What do you guys think? Any interest in participating in such a thing?

News, Ideas, and Random Musings by the author of World Machine