To Hell and Back

Introduction

My upcoming roll playing game session involves the Abyss. This tutorial is a walkthrough of how I re-created that place in TG2. Here’s a preview of the final product

Land

For the land, I created a standard fractal heightmap in the background for higher hills and a fractal heightmap in the foreground for the main part of the scene, with the Feature scale reduced to 200 from the default 2000.

Sky

The Earth’s sky appears blue because our atmosphere scatters blue photons. TG2 re-creates that appearance in the Atmosphere section using the Bluesky Horizon Color

 

Let’s change that color to Fire Engine Red

Much more Abyss-like (or so I imagine).

For a darker horizon, make the Haze horizon colour a darker shade of grey.

Cracks

It feels like the Abyss needs a cracked floor. A little research on the Planetside forums turned up just the ticket: http://forums.planetside.co.uk/index.php?topic=6432.0 I marked all of the nodes in the Advanced Cracks group and exported as a clip file

Then just imported in my own scene and hooked up the same way it’s hooked up in the sample from the forum.

Give the Cracks node a more hellish color

Now for a few twisted, dead trees. I found a decent, free set on ShareCG. A sparse population of each of the three types gives just the desired look.

The Abyss needs a cracked, dried floor. FrankB’s Advanced Cracks is just the ticket.

Here’s what we have so far:

Lava, First Try

It just wouldn’t be the Abyss without some Lava. I added a generated heightfield, used a vertical adjust to multiply the height by -1 (so that it becomes a depression) and added a lake over the same spot. For the lake shader, I used a seamless lava texture as the luminosity image from http://en.cze.cz/Textures.

Here’s what the lake looks like:

 

Smoke

Now for the final touch, the Abyss would not be complete without some smoke. I used a Cumulus layer with the color set rather dark and the density dialed down quite low. The feature scale for the density fractal is also 1/10th as large as the default.

 

Lava Lake, Redo

After playing around with different camera locations, I realized that the seamless texture for the lava lake can look bad when viewed from a distance due to the repeating nature of the texture. For the final version, I replaced the seamless texture with a fractal one.

The output of the Tile creation portion of the Advanced cracks node group provides the perfect input. I pass that output through an Inverse scalar node (turns black into white and vice versa) and into two surface shaders

Here’s a shot of the final version

Posted in Uncategorized | Leave a comment

Clouds from Space

Noisy Clouds

Terragen 2 (and many other applications) use algorithmic noise to create realistic clouds. Invented by Ken Perlin, Perlin Noise is a fast-to-compute and realistic function for simulating many natural features including clouds and terrain. Ken posted a great introduction at http://www.noisemachine.com/talk1/.

I’m just beginning to explore clouds and am sure there’s room for improvement. Advice/suggestions are appreciated.

The Right Noise

There are several parameters that control the shape and scale of Perlin Noise. I started with a few forum posts at Planetside:

http://forums.planetside.co.uk/index.php?topic=144.0

http://forums.planetside.co.uk/index.php?topic=540.0

but the clouds weren’t coming out the way I want. For your reference, I’m posting the various images I created by trial-and-error along with the appropriate settings.

Here’s the settings for my cloud layer (note: for more realism, you may want additional layers)

The Images

Each of these images tweaks the settings for the pattern of clouds (shown when you click the Pattern… button).

Scale

Density

Tweak Noise

Warping

Feature Scale: 1e+006

Lead-in Scale: 1e+007

Smallest Scale: 5000

Contrast: 1

Coverage Adj.: 0.15

Roughness: 1.5

Noise Flavor: Perlin

Noise variation: 1

Var. method: Clamped multi

Buoyancy: 0.5

Clumping: 0.25

Noise Stretch: 1 1 1

Lead-in: 1 octave Perlin

Lead-in amt: 1.025

Less warp: false

Allow vert. warp: true

 

Scale

Density

Tweak Noise

Warping

Feature Scale: 5e+005

Lead-in Scale: 1e+007

Smallest Scale: 5000

Contrast: 1

Coverage Adj.: 0.15

Roughness: 1.5

Noise Flavor: Perlin

Noise variation: 1

Var. method: Clamped multi

Buoyancy: 0.5

Clumping: 0.25

Noise Stretch: 1 1 1

Lead-in: 1 octave Perlin

Lead-in amt: 1.025

Less warp: false

Allow vert. warp: true

 

Scale

Density

Tweak Noise

Warping

Feature Scale: 5e+005

Lead-in Scale: 5e+006

Smallest Scale: 5000

Contrast: 1

Coverage Adj.: 0.15

Roughness: 1.5

Noise Flavor: Perlin

Noise variation: 1

Var. method: Clamped multi

Buoyancy: 0.5

Clumping: 0.25

Noise Stretch: 1 1 1

Lead-in: 1 octave Perlin

Lead-in amt: 1.025

Less warp: false

Allow vert. warp: true

 

Scale

Density

Tweak Noise

Warping

Feature Scale: 2e+005

Lead-in Scale: 4e+006

Smallest Scale: 5000

Contrast: 1

Coverage Adj.: 0.15

Roughness: 1.5

Noise Flavor: Perlin

Noise variation: 1

Var. method: Clamped multi

Buoyancy: 0.5

Clumping: 0.25

Noise Stretch: 1 1 1

Lead-in: 1 octave Perlin

Lead-in amt: 1.025

Less warp: false

Allow vert. warp: true

 

Scale

Density

Tweak Noise

Warping

Feature Scale: 1e+005

Lead-in Scale: 3e+006

Smallest Scale: 5000

Contrast: 1

Coverage Adj.: 0.15

Roughness: 1.5

Noise Flavor: Perlin

Noise variation: 1

Var. method: Clamped multi

Buoyancy: 0.5

Clumping: 0.25

Noise Stretch: 1 1 1

Lead-in: 1 octave Perlin

Lead-in amt: 1.025

Less warp: false

Allow vert. warp: true

That’s starting to look a bit better. Let’s back out and look at the whole planet.

For comparison, here’s the Earth:

The pattern is not bad at all, but could be brighter. Let’s increase the Cloud density from 0.0002 to 0.001

Clouds appear more compact (not spread over as wide an area), and brighter. Let’s crank Cloud density up by 10x again, to 0.01

Getting quite bright, but the clouds are also getting smaller and smaller. Let’s dial down the Coverage Adjust a bit and see what happens

Scale

Density

Tweak Noise

Warping

Feature Scale: 1e+005

Lead-in Scale: 3e+006

Smallest Scale: 5000

Contrast: 1

Coverage Adj.: 0.02

Roughness: 1.5

Noise Flavor: Perlin

Noise variation: 1

Var. method: Clamped multi

Buoyancy: 0.5

Clumping: 0.25

Noise Stretch: 1 1 1

Lead-in: 1 octave Perlin

Lead-in amt: 1.025

Less warp: false

Allow vert. warp: true

 

This will do nicely for my purposes!

 

 

 

Posted in Uncategorized | Leave a comment

From 2D to 3D

I’m re-creating a role playing game world in Terragen 2. The game has already been played extensively using regular 2D maps, and I want the TG2 re-creation to be a good approximation of the original maps. To that end, I’m using L3DT to create a height map from the original 2D maps that I’ll eventually import into TG2.

My original game map looks like this:

You can see where ocean, hills, forest, mountains and desert should be. However, this map is also cut off since the original game did not explore the whole continent. Since TG2 gives us the power to visualize the whole world, let’s expand this map to cover a continent.

The stuff on this map needs to match the final product since that’s what the players are familiar with. The rest of the world can be created by L3DT (and edited by me). So, I created a larger image and dropped the map into the bottom-center of that larger image to use as a guide in L3DT with the whole map sized at 1024×1024 pixels:

Note that most of the new image is white. I used Paint.Net for this, but any image editing software will do.

You may wish to create a lower resolution version or two, e.g. 256×256 and 64×64 in your image editor as well. L3DT will resize the higher resolution image as needed, but it’s fairly slow at doing that.

Now in L3DT, create a new project.

Use the settings shown below (if you want your continent to be the same size as mine, 2097km x 2097km… note that this first iteration says the map will be 262km x 262km, but we’re going to expand the map several times before we’re done)

The default settings on the next page are good:

Move the Altitude range slider to Flat. Leave the Average altitude and Lakes sliders alone. It should be safe to tweak the other ones if you want.

Create only a design map:

Right-click on the design map and select View / Image drape…

Select the map you previously prepared. It will be overlaid semi-transparently on the design map.

Zoom in to the map as needed and tweak the individual cells in the design map to match the terrain from the original 2D map

We’re going to go through a few rounds of resizing the design map to be larger (so we can fill in more and more detail). To make it easier to back out of one of those rounds, I suggest you save each one with a unique file name (here I used the current resolution of the design map 64×64 as part of the file name):

Now resize the design map by doubling both width and height without changing anything else

Again, zoom in and shape the terrain to match your map.

Repeat that step two more times, until the heightfield size is 32768×32768 (with a design map of 512×512) and voila…

 

 

 

 

 

Posted in Uncategorized | Leave a comment

Realistic Rivers

Need a River?

This post describes a method to create realistic rivers by combining L3DT and Terragen 2.

The basic idea is to use L3DT’s ability to model water flow patterns using the RainMaker plugin (see also this post for a correction to the documentation) and then export those patterns into a separate height map.

The Steps

In L3DT

Design Map

Create a new project. On the design map, ensure there’s an area that should naturally channel water downhill. Starting near a peak, edit a path down the hill/mountain toward the ocean or lake that the river should flow into so that:

  • The altitude of each tile closer to the destination is lower than the previous one.
  • The tiles that form the banks of the river are higher than the river tiles

Example:

Height map

Go ahead and generate the Heightmap.

There’s a generally good path down the mountain.

Now use the heightfield editing tools in L3DT to carve out a clear channel for the river.

Water Map

Now use the Calculation wizard to create the water map

Install the RainMaker plugin from the link at the top of the post. You need to explicitly load the plugin

Run a script to create the river map

calc.WM.rain <GetMap “HF”> <GetMap “WM”> 1 500 0 -0.5 0xFF
calc.HF.ShiftMap <GetMap “Rain-maxdepth”> -5 false
calc.WM.ApplyOverlayMax <GetMap “HF”> <GetMap “WM”> <GetMap “Rain-maxdepth”> true


The RainMaker will take a while to run. Warning: The progress bar might get lost if you minimize L3DT. I got it back by minimizing and restoring a few times.

Water Map Mask

We’re going to need a mask in TG2 for the water areas (both to mask the separate heightfield, and to mask a water shader). Let’s define an appropriate mask algorithm in L3DT

Go to the Water depth tab and set a minimum depth of 1. Leave all of the other settings alone. Click Save as and give it an appropriate name (I used WaterHeightMask).

Have a look at the Rain-flow tab

Now convert the rainfall map to a height map

Turn off Include sea (bool) by double-clicking it

Now have a look at WM_Height

Finally in L3DT, we need to create a mask for the water…

Note: WaterHeightMask was created in a previous step.

Now create the Texture Map to give us a head start texturing the TG2 scene:

Finally, to prepare for TG2, export the following from L3DT

  • Heightfield as HeightMap.ter
  • Texture map as TextureMap.jpg
  • WM_height as WaterHeight.ter
  • Mask1_WaterHeightMask as WaterHeightMask.bmp

 

In Terragen 2

Create a new project. Delete the default Heightfield generate 01 and replace it with a new Heightfield load node. Load HeightMap.ter with it.

Add an Image map shader.

Have it use TextureMap.jpg.

Set the Projection type to Plan Y and the Size to 10240×10240 (because the texture map is 1024×1024 and I set L3DT to a scale of 10m/pixel).

Here’s what it should look like so far:

Add a Surface layer

Delete the Fractal breakup that is created by default. Uncheck Apply color on the Surface layer and add a Water shader.

On the Surface layer, go to the Displacement tab and assign a new Heightfield shader that loads WaterHeight.ter. Turn off Fractal detail for this Heightfield shader.

Still on the Surface layer, check Blend by shader

Assign a new Image map shader.

Navigate around the TG2 scene so that the camera is looking at the river and do a test render.

The water height can be adjusted up and down easily using the Surface layer‘s Displacement offset feature. Moving it down (e.g. to -1) moves the whole water level down a meter.

 

Use WaterHeightMask.bmp as the input to the new Image map shader.

Edit the new Image map shader to project Plan Y and cover 10240×10240 (if you used a heightfield of 1024×1024 with a 10m resolution)

Here’s my first test render. If you don’t like how the water flows, just go back to L3DT, edit the heightfield, and repeat the steps above (it looks like a lot the first time thorough, but it’s pretty easy once you get the hang of it).

 

 

 

Posted in Uncategorized | 1 Comment

Glowing in Style

In my previous post Glow in the Dark, I wrote about how to use the luminosity controls to create a glowing night scene. Even though different parts of the scene could have different colors, any given component only had one solid color. While pretty cool, it yields a cartoon-like appearance rather than the photorealism I’m striving for.

This post is about how to achieve more color variation.

Here’s the result from the previous post:

Let’s look at the imported myosotis.tgo from the previous post. It has a multi shader (Multi shader 01 in my case)

Let’s edit that

Now edit Shader 1, which is called Flower1

Let’s create a new Power fractal shader v3 to provide some color variation.

I changed the Colour tab settings (Apply low colour, value 0.4). Without applying the low color, there’s too much very-dark mixed in, which causes the overall flower to seem too dark.

The Tweak Noise tab provides plenty of opportunity to adjust the color variation:

Changing the noise to Perlin Ridges and stretching X out to 10 provided just the look I was after

Here’s what we have for the flowers. Note that there’s come color banding on the flower we didn’t have before.

Let’s try something different for the stems and leaves… just use the image originally supplied with the plant object as the Luminosity image

 

Posted in Uncategorized | Leave a comment

Glow in the Dark

I wanted to create a moonlit scene with a few luminescent plants brightening things up. Here’s how it works…

Start by importing an object into your scene. In my case I chose Myosotis from terragen.org.

Note the Surface shader called Multi shader 01 (the exact name in your scene might vary). We’re going to edit that now.

Click on the green plus sign, then select Go to “Multi shader 01”.

This reveals separate shaders for the flower, leaf and stem.

Again using the green plus, edit the shader for Flower1

Looks like this:

Crank up the Luminosity (here I changed it from 0 to 0.0323) and pick a color (something cyan-ish in my case).

Let’s have a look at the result:

Now let’s add some luminosity to the flowers and stems as well

Here’s what it looks like:

The colors are a bit too luminescent for my taste, here’s the result after tweaking down the luminosity parameters a bit and zooming in closer:

Finally let’s turn up the GI (Global Illumination) settings of the renderer as suggested by Oshyan.

Looks a bit better, but took 9 minutes to render with the new settings vs. around 3 and a half minutes with the original GI values.    

Posted in Uncategorized | 1 Comment

The World is Flat

I just spent 20 minutes pulling my hair out because of one little checkbox called Flatten surface first. I guess what confused me is that it feels like a double negative the way I think about things.

Flatten surface first applies to Heightfield Shaders and indicates whether the referenced heightfield should be flattened before being rendered. The way my brain works, “flattening” should mean that the heightfield is wrapped onto the planet sphere so that it’s “flat” in the sense of elliptic geometry. The way TG2 actually works, “flattening” means to leave the heightfield flat in the sense of planar geometry.

What does this all really mean?

Let’s take a heightfield that represents a constant altitude (i.e. it’s all one color when viewed as an image file) and place it onto the surface of a planet. Let’s give the planet an ocean to make more obvious what’s happening. The Flatten surface first checkbox of the Heightfield Shaders are checked.

The result: The constant altitude heightfield is flat in XYZ space rather than flat on the surface of the planet. The lower left corner is close to the planet, but the world’s curvature causes the ocean to fall further below the surface of the heightfield the further it moves away from the origin:

Now let’s uncheck Flatten surface first. TG2 now wraps the heightfield around the surface of the planet the way one would expect terrain to follow the planet’s curvature.

So what happened to the land? It’s below the water’s surface now… in fact, it’s all at the same altitude as the lower-left corner of the original image, which was also below the water’s surface. Let’s lower the oceans a bit and we’ll see that the land is now at a uniform altitude from the point of view of the planet.

Voila! Flat land.

Posted in Uncategorized | Leave a comment

Continent Scale Heightmaps

Introduction

I’m working on a planet-scale project for a D&D game and realized I can achieve much of what I need by creating a set of heightmaps in L3DT and then loading them into TG2 as the basis for my terrain. TG2’s ability to add fractal detail and perform photorealistic rendering will provide all I need for the game.

L3DT lets you generate very large heightmaps by working on one part at a time in memory and writing the other parts out to disk as a tile set. These individual tiles can then be mapped in to TG2 with one Heightfield Shader per tile.

The trouble is, if you have a significant number of tiles, it’s pretty tedious to setup the TG2 nodes correctly. Since I don’t like tedium and I can program, I went ahead and wrote a quick-and-dirty utility to create a TDG appropriate for the L3DT tile set in question. This post walks through how to use that utility.

TiledTG2 Utility Program

The program is available here. There’s no setup. Just unzip the folder containing the program and the file World.ttgd somewhere convenient (e.g. your desktop) and run TiledTG2.exe. You can also download the C# source code.

I will be updating this program from time-to-time as my project moves along. One option I’ll most likely add early on is the ability to specify one tile to be loaded in TG2 at full resolution, with the other tiles are loaded at a lower resolution. That would be useful if you’re doing an animation that begins high up and moves down to a close-up scene in a specific tile.

Creating Tiled Heightmap in L3DT

Start with a new project

Accept the default:

In this example, I’m creating a heightmap with a total size of 4096×4096, consisting of a 2×2 tile matrix with each tile 2048×2048. L3DT can create a tile set as large as 131,072×131,072. From what I have seen, such a large tile set will take a very long time to calculate. NOTE: The PRO version is needed to create a tile set. There’s a 90 day trial (which I’m using 🙂 )

Accept the defaults on the next screen

Feel free to tweak parameters on this screen, or just accept defaults:

Next generate the Design Map:

Save the project when prompted.

The resulting Design Map can then be edited. This is one of the main features that make L3DT great for my purposes… I can easily tweak the map at a very high level to resemble the game world my group has been adventuring in for years. Your map may look something like this:

Next kick off the Heightfield and Texture Map using the Calculation Wizard

You must select the Attribute Map in order to also select the Texture Map

The TiledTG2 utility will overlay the Texture Map on the Heightfield to give you a head start with terrain coloration.

The defaults for the Attribute Map screen are fine

Uncheck Use Light Map on the following screen to save some calculation time

Enjoy the nicely animated progress screen while the heightmap is generated

You will eventually end up with a heightmap something like this:

And a texture map as well:

There’s a ton of flexibility in L3DT to both modify how the maps are generated and to edit them after the fact. I won’t go into the details here, but there’s plenty of information on their website.

Now to export the files to a tile set that can be used in TG2.

Select the Heightfield tab and press Ctrl-E (Export the current tab). Select the checkbox Split map into tiles (mosaic map). Pick a filename to save under.

If necessary change the export format to TER files (I changed it permanently for me in the L3DT options menu)

Rinse and repeat for the Texture map (switch to the Texture map tab then press Ctrl-E)

The default settings on the next tab work fine

Using TiledTG2

Just unzip the TiledTG2 folder somewhere convenient (e.g. your desktop) and run TiledTG2.exe.

I keep all of my TG2 stuff on a Q: drive. You probably have your files elsewhere, so you’ll have to edit those paths. I do plan to have the program remember the last settings in an upcoming version.

World.ttgd serves as a template for generating the TGD file (the extra “t” stands for template). There’s nothing magical about that file… I just started with a simple TGD that works for my purposes and added a placeholder node called <L3DT />. My template has an extra planet that serves as the ocean, with a radius 1000 meters larger than the actual planet. You can edit it with a standard text editor if you’re reasonably fluent with XML.

The Heightmap Prefix and Texture map Prefix refer to how you named the tile files when exporting from L3DT. In the walkthrough above, the Heightmap Prefix needs to be Q:\Terragen 2\Tutorial\Heightfield since that’s how I named the tiles when exporting. Texture map Prefix would need to be Q:\Terragen 2\Tutorial\Texture (again, because that’s how I happened to name the files when exporting from L3DT).

Viewing the Result in TG2

Just open up Gen.tgd in TG2 to see the result. In this example I edited both the terrain and the texture to indicate the tile number.

Here’s a shot a bit closer up:

Posted in Uncategorized | Leave a comment

Blending Heightfields

One of my goals for Terragen 2 is to model an entire fantasy world.  There are a few approaches around the Planetside forums, but none offer the realism and control I’m looking for.  I want to be able to specify a “zoomed out” model, and also a more detailed model for specific areas when you zoom in (e.g. show villages complete with buildings).  I’m looking toward the long-anticipated API and my programming skills to do that.

In the mean time, I’m learning.

One challenge in creating a world-scale model is that not all areas look alike.  Green fields, desert, rocky hills all coexist in the same world and have to blend realistically from near and far.  This post explores how Terragen 2 supports that.

The files for this post are here.

Open up MergeShaderRedGreen.tgd.  There you will find two heightfields (one red, one green) merged together with a merge shader.  The heightfields have not been generated yet, so the areas appear flat.  They are designed to overlap.  Note how the overlap area is a blend of the red and green colors… it is yellow.

Red and Green Heightfields (not generated)

Red and Green Heightfields (not generated)

Now generate the heightfields and note how the two heightfields interact.

Here’s the generated result

Red and Green Heightfields (generated)

Red and Green Heightfields (generated)

Note how both the colors and the heights blend in the overlapping region… colors are a mix of the color of the two heightfields, and the altitude is the addition of both heighfields.

This example is constructed to understand how multiple heightfields in the same TGD interact.  With a little work, the red area could be desert, the green area plains.  Toss in an altitude shader to make the higher area in the middle snow-covered and the result would be quite a bit more realistic.

Posted in Shaders | 1 Comment

Ducks. Lots of Ducks.

Kids.  Work.  Life’s been crazy.  In a good way.  All that meant no posts for a while, but with the holidays upon us and a little more free time, I’m glad to be back to writing about Terragen 2.  The notes of thanks and encouragement about blog helped me find the time too.  Thank you!

So… placing a duck in a scene is nice, but what does that really get us?  Real life usually consists of much more than a barren landscape and a single object.  Flocks of ducks, forests, swarms of things look much more realistic and interesting.

Duck Population

Two populations of ducks

One option would be to rinse and repeat hundreds or thousands of times, adding objects one at a time to the scene.  Sound like fun?  No, I didn’t think so.  Fortunately Terragen 2 provides a feature called a Population that lets you place lots of a given object around your scene, and gives you plenty of control over how it’s done.

First, lets have a look at creating a whole mess of ducks then I’ll break down what’s happening:

You can download the project to more easily follow along with the rest of the blog.

With the project open, have a look at the Objects section.  Note that there are two populations of ducks in the same area, one with yellow ducks and one with… I’m going to say light-purple-pink ducks.

Highlight /Pop d2.obj.  This is the population description for one of the two duck populations.

The Distribution tab lets you define where the ducks will be added to the scene and how.  Area centre and Area rotation position and rotate whole area where the “flock” will be added, while Area length a and Area length b define the size of a rectangle that the flock will be fitted into.  Try changing some of the values and watch the preview window change accordingly.  You might want to reposition the camera a bit for a better view.

Did you try it out?  Seriously… give it a try.  You will learn much better by being hands-on.

Now have a look at Object spacing in a, b and Spacing variation in a, b.  These control how tightly packed the ducks are (if you’re doing a can of sardines, the object spacing would be a really small number, if you’re doing a very scattered population use large numbers… make sure your numbers are smaller than the Area length numbers if you expect to see many objects).  Spacing variation shakes things up a bit.  If set to zero, the population members would be lined up like ducks in a row.

In fact, try that out now.  Do this:

  1. Select /Pop d1.obj.
  2. Uncheck the Enabled checkbox (so you only see population 2 for now)
  3. Select /Pop d2.obj.
  4. Change Spacing variation in a,b to 0 and 0.
  5. Do a quick render and check out the result

My result looks like this:

Ducks In A Row

Ducks In A Row

The ducks are all turned a different direction (more on that in a minute, but they are spaced in a regular pattern).

One more option on the Distribution tab is to use a Density shader to mask the population we just defined.  Masking means it will remove some portions of the population based on the selected shader.  The documentation is not very clear on the exact criteria to mask/remove specific population members (hopefully a knowledgeable reader will enlighten me), but you can give it a try and see how it works by checking Use density shader and creating a new shader or assigning an existing one.  I used an existing one by hitting the green plus next to where you can enter a shader name, then selecting Assign shader / Fractal breakup 01.  Give it a try.

Let’s explore the other tabs on the Population object now.

The Terrain tab lets us pick which terrain to put the objects on the surface of.  In our case we only have Compute Terrain (in fact, that’s probably going to be the choice 99% of the time).

The Object scale tab allows for a range of scales for the population.  Try changing the Maximum scale from 1 to 3 and doing a quick render.  Might be funny with ducks, but with something like trees varying the scale from say 0.9 to 1.1 could make for a useful effect.

Remember how our Ducks in a Row were all lined up, but rotated all sorts of ways?  That’s because the Object rotation tab allows for a rotation anywhere from 0 to 360 degrees… so allows them to face any direction.  If you were creating a distribution of soldiers all moving in the same direction, you would want to give them a very narrow rotation range.  Here’s my version of that:

Duck Army

Duck Army

The last tab, Seed, lets you specify a number to start the random number generator used in creating the distribution.  All else being equal (same settings on all tabs), using the same seed will give you the same “random” results every time.

Object distributions present a powerful capability to create the realism of a complex world with little work.  Just a few object distributions overlaid on each other can create a detailed scene such as a forest in a matter of minutes.

Posted in Objects | Leave a comment