Introduction
I will maybe shock its creator (Dan Parnham), but I really did not like Terranim before the 2.0 version, for several reasons :
- The interface wasn't practical.
- The possibilities were quite limited.
- The software in itself did not satisfy my needs, and the results weren't exceptional compared with those of Campath, with equivalent effort.
However, - and as it is said "only stupid people don't change their mind" -, it should be recognized that an exceptional job was made with this version 2.0,
the interface was enhanced, the software ergonomics were improved, and the possibilities are more numerous than before.
Most of
my last animations have been made with Terranim 2.0 (since "Breathe" in fact).
What changed in this new version ? I propose to discover exactly that in this tutorial.
Important note - I must specify : I specify it (once again) : this tutorial will not enable you to make a success of your animations
as if by magic, but will explain Terranim's possibilities to you, with some advice specific to the program. If you are more interested in the problems of making a successfull animation,
have a look at
my 3rd tutorial, where I give a great deal of advice on animating in general. This tutorial would be
interesting even if you're a beginner in animations.
Tutorial plan
Necessary elements
Several elements are necessary to create an animation :
- Terragen, of course !
- Terranim ! The most current version is 2.0.13 as of the writing of this tutorial, but check the home page for the latest version information.
-
A PC with enough power for the rendering : For this tutorial we won't make an entire movie, but rather a beginning test animation.
Of course the more RAM and the faster processor you have, the better off you are. You will also need a good storage capacity on your hard disk.
Renderings can be VERY long, particularly if there is water in your animation. This component really influences the rendering time.
You have to keep in mind that you are not rendering one image, but hundreds !
-
A program to "stitch" the whole : Terragen is going to render image by image, and will save each image on your
computer separately, in BMP format. Then these images will have to be "stuck" to
the ones following, to create the illusion of movement (at 25 images per second for our example).
Personnally, I use Bink, very simple and fast. VideoMach or VirtualDub are not bad too.
- The quintessence of technology... a simple text editor of wordpad type.
- Save with each modification, especially with Terranim ! ("save..." and save the *.tap file)
- Patience : essential ! (for the rendering time especially)
-
To temper your ambitions a bit : you have to keep in mind that you're not calculating just a single image (it is obvious, but more important than it seems),
so you'll have to forget renderings at 4000*3000, with immense terrains and all the detail settings at the maximum !
In general, a render at 400*300 is a good compromise size/duration when you're a beginner. When you gain better control of the subject, you can increase the resolution.
I personally work in 720*400, i.e. near DVD resolution.
To my mind there is no need to work with bigger resolutions (2000*1500 for example), except if you have time to waste or if you have 500 PC's...
A "logical" way of creating an animation
I want to use the same logical way discussed in the
first tutorial I wrote.
I will give you the Terranim-adapted method :
- Adjustment of the default settings of Terranim (default speed, water level, zoom values, etc.)
- Terrain loading
- Choice of the camera mode
- Point placing
- Point "levelling"
- Banking and zoom
- Other parameters : clouds, sun, etc.
- And script generation !
Don't worry (be happy...), I'm going to explain how you can do all this, but the new features I've deliberately not talked about too !
1) First launching of terranim 2.0.13
Here's a snapshot of Terranim.
Let's go over the options in the main menus :
The graph-shaped icon enables you to create a graph (more on that later), the wheel-shaped one will display the "Control Panel", and the little triangle in the bottom-right
will launch the previsualization (just remember to build the model by clicking on the little cube in the bottom-right, it will generate the 3D-terrain).
Let's go back to the "Control panel", it has two rather useful tabs, and one for more advanced users.
- "Scripting" enables you to :
- Turn "Auto-Banking" on and off : even though Terranim does this better than Campath, I prefer choosing banking values myself !
- Modify the frame rate ("Frames per second").
- Change "gravity" value : if you change this value, "Auto-Banking" will be recalculated.
- Choose the type of movement for your camera ("Camera target mode") : "Look Ahead", "Look Behind" and "Use a Target Path" will enable you to specify the aiming path (where the camera looks at).
For this last option, I highly advise you to have a look to
my 2nd tutorial where I've explained it in detail.
The principles of the function in Campath are the same in Terranim.
- "Miscellaneous" enables you to :
- Change the "Water Level".
- Change the default height value. Example : if this "Default Height" has a value of 2 (Terrain Units), when you add a new point to your path, this point will be added with an altitude of 2 Terrain Units
above the terrain. Simple, isn't it ?
- Modify the default speed value ("Default Velocity"). As explained above, if you add a point, the speed value will be the same as defined in
"Default Velocity".
- The last tab "Custom Commands" enables you to modify all defaults parameters. For example, if you want to have a zoom default value at "1.15", you change it here (for advanced users only).
Now that menus are covered, let's see the graphic interface !
2) Interface
To my humble opinion, it's here that Terranim gives us all its power. The system is simple : you just have to use the buttons above your terrain to place your points and the graphs enable
you to change all the values very quickly and simply.
Let's detail the buttons, from left to right :
- The 1st one adds a point to your path (at the end of your path).
- The 2nd one enables you to add a point on your path between 2 points. You just have to click where you want on your path and the point takes place automatically (difficult to make simpler !).
- The cross allows you to move the currently selected point ("Move Control Points").
- The next one enables you to select a point on your path ("Select Control Points"), or several.
- The eraser enables you to... remove a point from your path ("Delete Control Points").
- The next one makes your path loop ; in other words it finishes where it started, and connects end-to-end ("Join the ends of the path").
- The last one ("Select Path to Edit") enables you to select which path you're working : "Camera path" or "Target Path".
If you want more details, have a look at my 2nd tutorial.
As you've seen, it is very simple. Now let's take a look at how to use the graphs :
Graphs enable you to see your path with the values of each parameter - the camera height compared to the ground
for example - but they can also show much more. It is possible to see each parameter (banking, etc.) change along
the path with these graphs, and moreover to change values for the parameter directly on the graph.
Let's suppose your camera goes under the ground in a certain place. You just have to select the nearest point(s)
on the height graph and then you can "raise" each point to fix the problem, editing the height value directly with a
simple click-and-drag, while comparing it to the underlying terrain.
This approach is even more powerful because, if you are using the 3D-previsualization, you will see the view changes
according to the modifications you've made. For example, if you've changed the banking value to 45 for the second point
of your path, and the 3D-previsualization is near this point, you will see the camera changing at the same time.
It can save a lot of time when you're searching for the "best" value.
You just have to try a new value and you can see the result immediately in the 3D-previsualization.
You may use not only one graph, but several graphs, you just have to add graphs as you need, in order to
control several parameters at the same time ! It is quite useful, and very powerful.
3) Possibilities given
Terranim already allows you to change the banking and the zoom properties (and the point positions of course). But it has
new possibilities, or new parameter possibilities :
- You can make the water level vary during your animation !
- You can change the cloud position freely over the course of an animation ("Cloud position x and y").
- The sun parameters also can also be changed ("Sun Heading" and "Altitude").
- "Exposure" can also be changed !
- The "Shadow Lightness" parameters can vary during the animation.
There is only one thing to remember when you want to make variations in a parameter: you have to check "Used" in the principal
menu for each parameter. For example, if you want to change the banking, select it in the principal menu, and check "Used",
as shown below.
Note : you may want to uncheck "camera auto-banking" in the Control Panel. This option can create problems if you want to
use certain parameters (such as banking, exposure, etc.). Moreover, banking is not difficult to parameterize yourself !
4) Terranim strong points
- The flexibility of the camera movements is very good, you can see an improvement in
my animations since "Breathe".
- The interface is very intuitive and rather "powerful". By which I mean you have a very fine control of the camera, better than with
Campath. You can make very interesting movements, for example see "LOTR", one of my animations.
- The graph system is very well-made, you can easily find where any problems are and solve them.
- The 3D-previsualization is at 25 images per second, and not at 15 images per second as with Campath. A small detail ? Not really, it can prevent surprises between previsualization and final results...
- The possibility of varying the water level is very interesting. I've made a little try, you can see it here.
- Some new animation parameters such as "Shadow Lightness" can be manipulated during the animation - Campath does not support many of these newer parameters.
5) Terranim weaknesses
Terranim also has its weak points of course. Here are a few - the most important to me are first :
- You can-t see the sun in the previsualization. With Campath, we can see a little yellow disc, but it is enough !
(even if the sun doesn't move in an animation, it can be important to know where it is)
- As a consequence of the first problem, there is no previsualization of the sun shadows. You must use "trial and error"...
This feature would be particularly useful in Terranim because you can vary the shadow lightness.
In fact, this is a wonderful option, but not previsible.
- When you have single a point for your camera path and several for the target path with Campath, it asks you how many
frames the animation should be, and this way you can make an animation with a fixed camera position (as if you turned your head
without moving). It is not possible to do this with Terranim as it must have at least two points for the camera path (a workaround
is to create two points very close together and use a very slow speed of movement between them...
it does not produce the best results.)
- A simplified panel for cloud animating would be nice, as with Campath (cloud speed, and direction).
While Terranim does allow you much greater control over the cloud speed and direction, it is also much less
intuitive to work with than Campath's more limited cloud animation controls (especially for begginers).
- We can make the water level vary, but we can't see it "in action" during the 3D-previsualization - it doesn't change.
You have to verify yourself that the camera doesn't go under the water. It is too bad, a graph could solve this problem
very easily.
- All new parameters (exposure and cloud movements) are not displayed in the 3D-previsualization either.
- Unless I am mistaken, I haven't yet managed to make a loop in a direct way. If you manage to do it, contact me !
I'm sure that these "weak points" will be added in the next versions !
6) Script division
I've already explained in
my 1st tutorial
how to split animation scripts (.tgs), however I will go over it again for a Terranim-generated script (basically the same way).
If you can't do the render all at one time, which is often the case, it is possible to split the render. This is also useful for
distributing an animation render across multiple systems to reduce render time. It is extremely simple.
Your script file looks like this :
initanim,"D:\images\terragen\anims\prochaine_animation\frame",1
;framenum,1
campos,488.000000000000,1044.000000000000,1392.864466588932
tarpos,552.000000000000,1308.000000000000,1207.499664306641
camb,0.000000000000
zoom,1.266000000000
frend
;framenum,2
campos,488.240655818272,1044.398007966959,1392.485214934030
tarpos,552.015867431654,1307.978843439360,1207.463320090100
camb,0.150409731538
zoom,1.266000000000
frend
;framenum,3
etc...
Let us suppose that rendering has to be stopped at image number 666 (number 665
has been calculated but not yet 666). You'll have to modify your script to obtain this :
(This is the new file)
initanim,"D:\images\terragen\anims\prochaine_animation\frame",666 <-- indicate from where it is necessary to restart
And here it is necessary to remove all the useless lines, i.e. until the frame 666.
;framenum,666
campos,601.180694026038,1338.519269811894,1154.718903556137
tarpos,565.641164573024,1296.633377314571,1190.313862226922
camb,19.063210596602
zoom,1.266000000000
frend
;framenum,667
etc...
7) Rendering an animation without "monopolizing" a computer
I have often heard that Terragen "monopolizes" the computer, and that rendering an animation "locks" your system.
Let's try to explain very quickly (and simply) what's happening : most application "threads" are launched with a
normal priority, i.e. every thread uses the
CPU the same as others.
Terragen is rather "greedy" and it takes what is not "used", in general 98% of the
CPU.
If you try to launch an application after starting a Terragen render (animation or still image), it will try to take what processor time
remains... which is approximately nothing. Result : other applications go slowly, etc.
It is not always possible to dedicate your computer to Terragen rendering, so to make it easier to do other things with
Terragen rendering in the background we can change its thread priority. You just have to hit the "magic Windows keys"
(i.e.: Ctrl-Alt-Del), and then go to the "Processes" tab. Assuming that you've already launched Terragen, you just
right-click on "Terragen.exe" in the process list then select "Set Priority" and choose something below "Normal".
The illustration above is in French (sorry!), but the menus are the same.
Now Terragen will not use "what there is", but only "what remains" - that is to say other applications will be
able to take resources when they need them. In general other applications are not very greedy (except if you're
running Unreal Tournament with another big applications at the same time for example), so Terragen can continue
its render without freezing your other applications.
You can do this for an animation render, even for a single render (a 4000*3000 render can be very long).
However it only works with Windows XP and Windows 2000.
Conclusion
You have reached the end of this tutorial. I hope that it has given you a good overview of Terranim and the advantages
of using it. This software is really interesting for animations with Terragen and I'm sure that Dan Parnham will enhance
and complete it soon !
I personally use Terranim almost exclusively for
my animations,
this software has a lot of potential !
I would like to thank
Oshyan Greene, for correcting my poor english !
In order to read this tutorial offline, here's a zipfile :
zipfile (about 50
Kb)
Don't hesitate to
mail me
to tell me what you've thought of this tutorial, or to show me your animations !