|
This tutorial is part two of a
series.
Theoretically, because a fractal has detail at all scales, one should be able to make a single fractal with continental-sized scaling yet still find details on it that are 'natural mountain' scaled - and even details that are sand-grained scaled. Many different variables and defaults will need to be poked at in order to come up with such a fractal. Also, to get a good variety of land forms, a good strategy is to combine several different fractals at differing scales. This section of the tutorial will look at creating a terrain texture that investigates several possible paths to terrain creation. Over and above all, the concept of scale is critical. To lay some ground work, take a look at this table of real-world approximations. Items preceeded with tildes are more approximate than the ones without tildes:
Keep those values in mind when it comes to tweaking parameters. MojoWorld's parameters are, for the most part, measured in meters so that's why the table above is listed in meters. Before getting down to serious parameter tweaking in MojoWorld, set the Generator UI Mode preference to 'normal'. Refer to pages 1 and 2 of the 2.0 supplemental manual for more information on the Generator UI mode preference. You'll also want to be working in a planet file that has very little in it except for the contour line material from the previous tutorial. Comments on Terrain Textures Part One of this series introduced color textures driven by altitude. Before getting into the specifics of creating terrains, I want to take a slight detour that'll point out how terrain textures are special when compared to other textures in MojoWorld. Terrain textures are also the least 'forgiving' as far as what you can get away with for things like Basis Functions, Roughness values and amounts and types of distortions. Here's a marked up screenshot of the terrain texture editor showing the features that you'll only find in the editor that is attached to the terrain texture:
A terrain texture is a value texture, but not only that, it's a value texture with some very limited input choices. The only inputs available for a terrain texture are:
As for the remaining input options; Constant has a good use for terrain textures and is something that brings back memories of the earliest pre-alpha version of MojoWorld (there were no curves then, so to invert fractals, I often subtracted from a large constant), UV Position was critical to the Mars project where a global heightfield was mapped onto the planet in order to accurately simulate Mars, and lastly Latitude has a place in creating some very strange terrain effects. For now, however, we'll stick with World Position as input. The DDLBs in the terrain texture editor will show you all textures, just like the DDLBs in all the other texture editors. This means it is possible to select, for example, a color texture driven by slope or driven by altitude to use as the terrain texture. If this is done, the input coordinates shown for that leaf may be blank or may get re-assigned to 'World Position'. So, be wary of which textures and leaves you choose off of the various DDLBs in the terrain texture editor. Plan A - a single continental scaled fractal Let's dive in and make a new terrain texture. Open the land texture editor. Choose 'New Texture' off the menu. Name the new texture something like 'Terrain Tutorial'. Enable the first texture leaf and open the kickstand. Choose from any of the last five entries on the fractal type menu, either the default of MonoFractal or any of these - HeteroFractal, MultiFractal, Mountain Fractal or Simpler MultiFractal. Each of the fractal types will have a different set of parameters that can be tweaked, but all of them use the subset of parameters that we are primarily concerned with - Largest Feature Size (which I'll abbreviate as LFS), Smallest Feature Size (SFS), Offset, Result Scale, Roughness and Basis Function. For the screenshots and parameters specified over the next section, I'll be using a MonoFractal. Though it's at the end of the list of parameters for all fractal types, the Basis Function ends up being one of the most important choices to make for a texture. The rest of this section will use the default basis function and will instead concentrate on scaling and other parameters of the texture. I've written a Basis Function detour that puts the various basis functions together into families. That detour The plan here is to create a single continental-scaled fractal to provide the terrain. So, the next thing to do after choosing a Basis Function is to set the LFS parameter to something that's 'continental-sized'. Refer to the table near the top of this page and set your LFS to something that's smaller than the circumference of the globe but probably larger than the 'NY to LA' distance - between 40,000 kilometers and 4,000 kilometers. Using the circumference of the globe as an upper bound is a good rule to follow - it will keep you from wasting compute cycles calculating features larger than the planet itself. Open up the Navigation Editor for a quick global view. Assuming you are using the contour lines material, the globe will be blotched with yellow and tan. Here's what I have with an LFS of 6,345,000 meters:
Note that you'll want to spin that navigation GPS globe around to see the total effect of the fractal. For most of the fractal types with most of the various Basis Functions, it'll be all yellow and tan because the output coming from the fractal will be in the range of -1 to 1. This will make the globe yellow where the output is less than 0 and tan where it's greater than 0. A notable exception is with the Sparse Convolution Basis Function - that never outputs anything smaller than 0.
Plan B - continents and local mountains
|