Terragen 2.4 Release Change Log
*Build 22.214.171.124 (release)*
*First release of the animation module. This adds powerful new tools for creating and working with animations, including a Curve Editor, Dope Sheet and interpolation modes, and much more.*
*IMPORTANT: Animation data is now saved to project files and clip files differently from previous versions of Terragen. Projects or clips saved from this version cannot be loaded into older versions, but projects and clips from older versions can still be loaded into new versions. Animaton data in the old format is stripped out of files when they're saved with this version.*
Not only have we added lots of new features for animation, but we've also made many improvements and bug fixes to the animation capabilities that already existed, including Undo, playback speed, timeline controls and project settings, and displaying animation icons in the Network View.
You can find out more about animation in Terragen in the Planetside Wiki:
*Object and population drawing in the 3D Preview is much faster.* Bounding box drawing is much faster on any graphics card newer than about 2003 (OpenGL 1.5). Wireframe drawing is much faster.
Object wireframes are now drawn with lighting which helps to give them a bit more definition.
3D Preview elapsed frame redraw time (actually an average of the last few frames) can be toggled on and off with the "e" key. This is the time taken to draw frames in milliseconds, it isn't frames per second.
The 3D Preview no longer starts refining from the beginning when you open a colour picker and then cancel it (bug 322).
Network view text drawing has changed. By default it's antialiased. You can turn that off in the Network View prefs pane. Node labels etc. have a new scaling behaviour.
Node text (labels etc.) no longer entirely vanishes when the first character moves past the left of the network view.
You can now customise the text size of the Note node.
The arrows drawn in the node network for node inputs with invisible connections are now drawn above the input rather than to the side. This makes things clearer on nodes with many inputs.
Added a new Action button to param views. This replaces the internal network button. Currently the Action button has two actions - "Edit internal network" and "Centre node in network".
Added a new preference to the Network View prefs panel called "Centre on nodes selected in node lists". By default when you click on a node in a node list the main window network view will centre on it. You can use this preference to turn this behaviour off. You can still centre on a node using the "Centre node in network" item in the new param view Action button.
Windows 64-bit only: Shortcuts on the desktop and programs menu have "(64 bit)" in the name so that they don't clash with shortcuts to the 32-bit version. To remove shortcuts to a previous version you should uninstall all previous versions before installing the new one.
Windows 32-bit only: Shortcuts on the desktop and programs menu have "(32 bit)" in the name so that they don't clash with shortcuts to the 64-bit version. To remove shortcuts to a previous version you should uninstall all previous versions before installing the new one.
*Export Gathered Project*. Added the ability to gather a project and its assets together, via the "Export Gathered Project" item in the File menu. You can find more information about it in the Planetside Wiki.
*There is a new Project Asset window*, which can be opened from the Show Project Assets item in the Project menu. It displays all the assets in a project, the nodes which refer to them and other information. It can also generate reports about the project assets.
Shader previews now open in floating windows, parented to the appropriate window. Only one preview can be opened per node. If a preview is already open when you click a shader preview button the existing preview will be brought to the front.
Improved the way windows, such as View windows and Animation Panel windows, are numbered.
There has been quite a big change in the way mouse and key settings/input bindings work. Please let us know if you have problems with mouse or key interaction.
There is a new option for customising input bindings. *The Input Actions list of the Customise Input Bindings window has a new category called Basic Inputs.* You can use the new "Basic action" binding setting to assign an action from the Basic Inputs category to a binding. Take the "Default click" action as an example. This action is common to several categories of actions, such as the 3D Preview, Animation Panel and Network View. You can set the basic action of the "Default click" action in all those categories to the Basic Input "Default click" action and all those actions will take their bindings from the Basic Input binding. This means that you just need to change the Basic Input "Default click" bindings and those changes will flow through to all other actions which use that as their basic action. To sum up, instead of change the "Default click" bindings in several places you only need to change it once.
Fixed an image loading bug.
Windows only: Fixed a bug with the Window menu used in various windows. It would stop working properly once the first window which used it was closed.
Mac only: Fixed a control focusing problem which mainly effected views drawn with OpenGL. This gives improved (or rather correct) behaviour in several situations.
Mac only: Files in the Trash no longer show up in recently opened files menus.
The Mouse and Key Settings dialog now remembers whether the key was shown or hidden.
Fixed a bug where the amount of memory used by Undo wasn't updated properly.
Fixed a problem with resizing split panes.
The Planet node now has more reasonable values for the Radius param slider.
Mac only: Fixed a crash at startup on OS X 10.4.
Mac only: Fixed a 64 bit error which could lead to some values being read incorrectly from project and clip files.
Some changes to param view layouts (fixed row height).
Windows only: Changed the way control fonts are set up. All controls will now use an appropriate system font (for example Segoe UI on Vista) and ClearType if it's enabled.
Mac only: Tab controls where the tab buttons are wider than the space available would truncate text. An example of this is the Render param view. These "too wide" tabs now change to using a popup list to select tabs, instead of tab buttons.
*Made a performance improvement for operations which show progress dialogs, such as generating heightfields or populating.* Improvements depend on the operation. They're much more obvious on the Mac. This was faster on Windows already but still shows some improvement.
Fixed a crashing bug where clicking on a layout button (buttons at top of main window) twice in succession could cause a crash if the layout wasn't showing a 3D Preview.
Windows only: Made a change which improves positioning of windows like shader previews, particularly when the main window is maximised (bug 378).
*Colour Picker improvements:*
- New "Shifter" colour panel.
- The Greyscale slider in the Sliders panel now has preset greyscale chips you can click for 0, 0.25, 0.5, 0.75 and 1.0 values.
- Some other colour picker improvements.
Whether the timeline and playback controls are shown is now remembered across sessions.
Timeline only shows if you have the Animation Module.
The Project Settings/Project param view comments field is now multiline.
Added some more tooltips.
Improved type selection.
The tab key can now be used in input bindings.
Using the mouse wheel is now more responsive. Let us know if you find mouse wheel actions less than satisfactory; some mice might behave differently.
Windows only: Horizontal mouse wheel movements are now supported on Vista and newer.
Horizontal mouse wheel scrolling in the Render view has been fixed. Scrolling left now scrolls left and vice versa.
Modified bitmap caching (primarily for bitmaps used in the UI such as icons), which will mainly be noticeable if you're using TG2 on a remote disk over a network.
Windows only: Fixed a problem with the Node Chooser which could prevent the node list from updating when you changed categories.
Fixed a bug (376) where the 3D Preview and network view could become unresponsive after cancelling/aborting a progress operation such as populating.
Fixed a problem with Assign node menus for planets. Previously the "Create new planet" item had an empty submenu, preventing you from creating a new planet. The "Create new planet" item will now create a planet directly.
Mac only: Menus were incorrectly allowing you to select menu items with submenus. This has been fixed.
Windows only: Menus in secondary windows have had a few more items added, Node Palette and Errors and Warnings window items in the View menu for example.
"Extra output images" is now OFF by default, but you might not see this change if you are using a custom default project.
*Not in Free Edition: GI cache files.* You can pre-render the prepass to write out a GI cache file or range of files and then re-use the files to render images without needing a prepass. In animations, Terragen can read more than one file and blend them, which can be used to smooth out flickering between frames. If you are building a large image out of separately rendered tiles, you can make sure all tiles have matching GI by using the same pre-rendered GI cache file or blended set of files. You can choose between 4 blend modes for GI cache files: "One file (exact filename)", "Nearest file in sequence", "Equal blend within range" and "Interpolate (animation mode)". The first two options do not blend, whereas the second two blend a range of cache files. We recommend that you use "Interpolate" for animations and "Equal blend within range" for stills where you want to combine multiple caches into one scene, eg. for a panorama or skybox.
Moved GI settings from the renderer's Quality tab to a subnode which can be accessed with the "GI settings..." button.
*Improved multithreading performance of the GI/Envirolight lookup in the final image pass.*
*Improved multithreading performance of renders that use heightfields, especially where more than one heightfield operator is used.*
Anti-aliasing/pixel filtering now runs a little faster.
Anti-aliasing bloom is calculated for rgb only. Alpha is not bloomed.
*Animation only: The command line option -f now accepts frame ranges and frame lists.* See the command line documentation for syntax and examples.
*Not in Free Edition: Command line options -tilex <minx> <maxx> -tiley <miny> <maxy>.* They are fractions of the image or fractions of whatever crop may already bet set. See the command line documentation for more info.
Render progress sent to stdout now includes the percentage of buckets completed in the current pass. Examples: "Rendering pre pass... 0:00:30s, 45% of pre pass"; "Rendering final pass... 0:01:01s, 35% of final pass, 694772 micro-triangles".
The start and end of each pass is logged with the lines "Starting pre pass", "Rendered 100% of pre pass", "Starting final pass", "Rendered 100% of final pass".
Improved error messages for some situations where there is an error writing an EXR file.
Atmosphere rendering is now clipped at a distance of 1e16. Previously it was clipped at 1e9.
The default value for "max threads" in a render node is now 64. If you are using a custom startup project you might not see this change until you create a new render node.
Animation only: Render subdiv settings node has a new option: "Stabilise ray detail in motion". This is useful for animations.
ATMOSPHERE AND LIGHTING
*Sunlight has options to enable/disable lighting of surfaces and lighting of atmospheres independently of one another.*
*CloudLayerV2 and Planet Atmosphere have a new function input called "shadow function".* This can be used to define additional regions of shadow for any direct light sources that cast shadows. This may be useful to remove light in certain regions when correct shadows of surfaces into atmosphere would be too expensive to calculate. Where the function is 1 (or white), the atmosphere or cloud layer will receive no light contribution from light sources that have shadow casting enabled. Where the function is 0 (or black), the atmosphere or cloud layer receives all the light from light sources. This function has no effect on the Enviro Light (global illumination or ambient occlusion) or light sources that do not have shadows enabled.
Cloud Layer V2 now renders faster when cloud colour is black or cloud scattering colour is black, as it avoids some unnecessary lighting calculations.
Cloud Layer V2 has a new option "move textures with cloud". If "move textures with cloud" is enabled, the texture coordinates used by density shader, modulators and functions are offset by the "localise" sphere centre, so that cloud shape and texture do not change whenever the altitude changes or the "localise" sphere centre changes. However, when you enable this for the first time you will see a change in the shapes or textures of the cloud because it switches to using the new offset texture coordinates.
SHADERS AND FUNCTIONS
Planets have options to automatically translate and/or rotate the shaders with the planet's centre and rotation parameters. Beware that some shaders do not respond well to being transformed. These options are OFF by default.
Image Map Shader: When the Image Map Shader rendered displacement, there was a bug which caused it to use the gamma conversion and smooth interpolation settings from the Colour tab instead of the Displacement tab. This is now fixed, but we've made it continue to use the Colour settings when you load projects or clip files that were saved in previous builds. This is so that renders don't change unexpectedly when you update to this build. There is a new option on the Displacement tab that allows you to choose which behaviour you prefer. Newly created Image Map Shaders will use the new, correct behaviour by default. (Bug 309)
*New shader: Alpine Fractal Shader v2*. This fixes some incorrect cliffs/discontinuities that are in Alpine Fractal Shader, but it is slightly slower. The new shader is used when you add an "Alpine Fractal" with the Add Terrain button.
*New shader: Vector Displacement Shader* (in the Shader/Displacement Shader menu). Displaces a surface in any direction according to a vector. This vector can be a vector function input or a constant vector offset, or the vector function and the constant offset can both be used at the same time. This kind of displacement was possible without this shader, but you needed to use a Redirect Shader and three Displacement Shaders to do the same thing, which was less efficient in many cases. Vector Displacement shader also has some convenient multiplier options and options to reverse the vectors.
*New function: Displacement Shader to Vector* (in the Function/Convert menu). This calls the displacement of its input shader and converts it to a vector function for use in function networks. This is useful if you want to modify a displacement shader using functions. The result can be sent to any shader that can displace using a function. If you only want a scalar rather than the complete displacement vector, use the Dot Product of the vector and Get Normal (or some other direction you're interested in).
*Four other new function nodes:*
New function: "Linear step scalar" node. It's in the Function > Step category. It is similar to Smooth Step Scalar but with linear interpolation instead of Hermite interpolation.
New function: "Normalise vector" node. It's in the Function > Convert category. This node converts the input vector to a unit vector.
New function: "Live value display" node. It's in the Function > Debug category. This node will display its input values in its param view when triggered.
New function: "Timed trigger" node. It's in the Function > Debug category. This node will output a specified scalar value whenever a specified delay elapses.
If the Hard Step Scalar is not given a step input, it behaves as if the step input has a value of 0.
The Smooth Step Scalar allows the start value to be greater than the end value.
The Notifier node now optionally just displays its notification once when triggered.
Optimisation to Condition Scalar: Instead of calling both the "If" and "Else" inputs and then choosing which value to output, Condition Scalar now calls only the input that needs to be output.
The Simple shape shader now lets you specify the edge width as a percentage of the shape size, as well as with an absolute width.
The Water Shader now correctly passes through its input when disabled (bug 320).
OBJECTS AND POPULATIONS
*Populator V3 has new parameters on the Object Rotation tab that cause instances to lean to the surface normal of the terrain, i.e. lean according to slope.* You can control the overall strength of the effect. You can also tell instances to lean less on shallower slopes than on steep slopes and not to lean at all if they are on slopes less than a particular angle.
Fixed an error in population "minimum Y rotation" (previously the value was interpreted as radians when it should be degrees).
It is now possible to *make all populations in a project populate.* You can use the "Populate All" button in the Objects node list or the "Populate All" submenu in the Project menu. Two options are available: "Needing update" and "Force update". "Needing update" will update only those populations which have been designated as needing update. "Force update" will update all populations. You might want to use "Force update" to update populations after generating a heightfield, for example.
The populator has an option to "sample terrain and density shader before moving and rotating area". This is useful if you move or rotate a population in space and want to lock the instances relative to the area centre and area rotation.
NODE PALETTE / QUICK NODE PALETTE
The Node Palette will create the selected node when you press the Enter/Return key.
*Quick Node Palette: The Node Palette can now be opened from the network view by pressing the N key (by default). This opens a special version of Node Palette called the Quick Node Palette.* The Quick Node Palette will stay open until you create a node by double clicking or pressing the Enter/Return key, when it will close. Only one Quick Node Palette is open at a time. The node is created where the mouse is over the network view or in the centre if the mouse is outside the network view. This enables quick creation of nodes - press the N key, start typing the name of the node you want to create and then press Enter/Return to create it when it's selected.
*The Node Palette has a help button which will open help for the selected node in your browser.*
Tweaked layout of Node Palette top pane when in popup mode.
Node Palettes recreated when TG2 starts will behave better in sitations where you might be adding, removing or resizing monitors.