The information in this Wiki Page applies to TANE, TRS19 and Trainz Plus.
What Are Layers?
In Summary: |
|
Layers are a Surveyor tool that allows you to better manage the objects that are placed in your Trainz World. |
|
|
Layers are a Driver tool that allows you to change what the players see as they drive around your Trainz World. |
|
Layers can contain any objects, visible and invisible, that can be placed into a layout using the Surveyor Object, Track and Train tools. The layers and their contents can be hidden from view or locked against alteration whenever required. Their main use is in the development of a Route and a Session but they can also be used as a way of providing some additional novelty during a Driver session.
The Layers Tool
Loading a Route and Loading a Session
The layers you see will depend on whether you have loaded a Route by itself (with no "child" Session) or a Session and its "parent" Route.
Creating a New Route
|
|
Notes:
- When a brand new route is created it will come with two layers, a single "route-layer" and a single "session-layer".
- Both layers will be empty (the baseboard with its grid is saved with the route but is not in any layer).
|
|
A layer can be renamed at anytime by double clicking on its name with the left mouse button and typing a new name. |
|
The "Active Layer"
In Summary: |
|
The Active Layer is the selected (highlighted) layer. |
|
When you load the Route only into Surveyor, the first Route layer will be the Active Layer |
|
When you load a Session into Surveyor, the first Session layer will be the Active Layer |
In the image above, the route-layer is the Active Layer. You can change the Active Layer at any time by clicking on the name of another layer.
|
Notes:
The Active Layer is the "working layer" which is:-
- where new objects will be added to the layout
- the layer that is automatically selected for merging and deleting
|
Caution: |
|
Trainz does not identify which is the Active Layer in Surveyor and this often leads to problems such as objects being added to the wrong layer.
See Adding Objects To Layers below for more information. |
Adding a New Layer
|
Click the Add Button |
An Add layer dialogue window will appear.
|
|
|
Steps:
- Enter a name for the new layer
- Select the layer group, Route or Session, where it will be placed
- Click the icon
|
|
|
You can easily rename the layer or move it to the other layer group later if you change your mind. |
|
Deleting a Layer
|
Select the layer to be deleted and click the Delete Button. If you don't select a layer to delete then Trainz will select the current Active Layer. |
Warning: |
|
Deleting a layer will delete ALL the objects placed in that layer except objects that are "Bound" to that layer. |
If the layer being deleted is empty, then the following dialogue window will appear:-
|
|
|
Choices:
- Click Yes to delete the layer
- Click No to cancel the delete operation
|
|
|
If the layer being deleted is NOT empty, then the following dialogue window will appear:-
|
|
|
Choices:
- Click Merge to merge this layer and its contents into another layer. See Merging Layers below for more information
- Click Delete to delete the layer and its contents. This cannot be undone
- Click Cancel to cancel the delete operation
|
|
|
Merging Layers
|
Select the layer to be merged into another layer and click the Merge Button. If you don't select a layer to merge then Trainz will select the current Active Layer. |
In Summary: |
|
Merging a layer into another layer will move ALL the objects from the first layer into the second layer. The first layer, which is now empty, will then be deleted. |
|
Once layers have been merged they cannot be separated. |
The layer merge dialogue window will appear as shown below:-
Locking Layers
|
It is good practice to LOCK ALL LAYERS that you are not currently editing. This will avoid the all too common problem of accidentally adding objects to the wrong layer. |
|
If you LOCK or UNLOCK a Route Layer while editing a Session then you will have made a change to the Route and will be asked to save both the Route and the Session when you exit Surveyor. |
Locking Individual Layers
To LOCK an individual layer, click on the Open Padlock icon next to its name. The layer being locked does not have to be the current Active Layer.
|
The objects in a LOCKED layer cannot be moved or deleted but they can be moved to other layers. |
|
|
- The first image on the left shows two Route Layers, both UNLOCKED with their Padlock icons Open. One layer, "Trees", is highlighted showing that it is the currently active layer.
- The second image on the left shows the same two layers after the "Trees" layer has been LOCKED.
- A locked layer can be UNLOCKED by clicking its Closed Padlock icon.
|
If you attempt to add a scenery object to a locked layer you will receive the following message:-
- Click the icon to UNLOCK the layer
|
Locking ALL Route Layers
|
Click the Lock Button |
This will LOCK ALL the layers in the Route Layers Group. The Session Layers Group will not be affected.
The Route Layers Group can be UNLOCKED by clicking the Lock Button again.
Moving a Layer
Main Points: |
|
Layers can be moved up or down
- within the same layer group (e.g. Route or Session)
- between the two groups
|
|
A layer containing track objects (e.g. signals, switches, etc) CANNOT be placed above the layer containing the track |
In the example shown below a layer created in the Route Layers Group is being moved into the Session Layers Group.
Hiding Layers
To hide or show a layer click the Eye Icon next to its name.
|
- In the image shown left the two trees are in different Route Layers
- All the layers have their Eye Icons set to Show
|
|
- In the image shown left the Trees layer has its Eye Icon set to Hide
|
If you attempt to add an object to a hidden layer you will receive a warning message. |
|
Layers that are hidden when saved in Surveyor will also be hidden when loaded in Driver. |
|
|
Route Layers vs Session Layers
This topic has filled endless threads in the Trainz Forums with arguments raging on both sides.
In Summary: |
|
There are no "cast iron" rules that dictate what should be placed in the Route Layers Group and what should be placed in the Session Layers Group. Each Route and Session will be different and different creators have different ways of working. The main question to be asked is how many different Sessions will be created using a particular Route? |
|
Notes:
- For a Route with only a single Session - everything can safely go into the Route Layers Group
- Many creators only ever build a single Session for each of their Routes and do not use Session Layers at all (but they still have to save the session separately from the route).
- For a Route with multiple (2 or more) Sessions - certain things will probably need to go into the Session Layers Group for each Session.
- Many creators build multiple Sessions for each Route and rely on the Session Layers to create the differences between their Sessions.
|
The Route Layers Group
|
The Route Layer Group should be used for everything that will always appear in Driver Mode regardless of which Session is playing. |
There is nothing stopping you from placing everything in the "route-layer" of the Route Layers Group and never having to worry about dealing with layers ever again - some creators prefer to work this way. However, layers do provide you with a way of organising your scenery objects to make them more manageable, particularly in more complicated layouts. Some examples:-
- A Special Objects layer or layers that can be used to hold certain scenery objects. For example all the trees or a particular building. This can be very useful when you need to hide those objects to locate or place other objects. Trackside cameras in particular can be very difficult to find when placed in a forest.
- A Platform Objects layer can be used to hold all platform items such as seats, luggage, luggage trolleys, people, lamp posts, etc. Because these items are placed on top of a platform object they can be very difficult to move or delete without first moving the platform. The layer containing the platform can be locked allowing these objects to be easily moved or deleted.
- Hiding and Showing Objects in Driver Mode. There is a Session Rule and a Driver Command that can hide and show layers during the running of a Session. For example: a rail worker can be placed in a separate layer and positioned next to a track lever while shunting operations are underway but can be removed from the scene by hiding that layer when shunting has been completed.
- A Test Layer for experimenting. Not sure if a particular object is right for your layout? Place it in a temporary layer which you can hide and show to see any differences it makes. This is particularly useful if you are deciding between different types of grasses, for example, placed throughout the layout. If the objects prove to be unsuitable then they can all be deleted by deleting the layer. If they are suitable then the layer can be merged with another or left as a new layer.
|
- It is a good idea to place ALL the consists in the same layer particularly if they are going to be coupled together during the running of a Session.
- A very useful development tool is the Bound Layer. See The Bound Layer section below.
|
The "route-layer"
|
To avoid any confusion over which layer is the original "route-layer", this is one layer that should not be renamed or moved from the top position. |
While all layers are equal, the "route-layer" is special.
Warning: |
|
Track objects, such as signals, junctions and track signs, cannot be placed in any layer that is above the layer containing the track that they are attached to. If the route-layer is used for all the track and track objects and this layer is left as the top layer then this will never be a problem. |
|
It is recommended that the following objects should be placed in the "route-layer":-
- Track and interactive industries with track
- Track infrastructure (turntables, bridges, tunnels)
- Signals
- Junctions and switches
- Track signs (speed limits, warnings, etc)
..and that the "route-layer" be placed at the top of the Route Layers Group. |
The Session Layers Group
|
The Session Layers Group should be used for everything that will only be seen in the currently loaded Session. |
If you are creating more than one Session based around a particular Route, then you will probably make use of the Session Layers.
|
Notes:
Session Layers can contain:-
- Scenery objects that will only appear in one or some of the Sessions.
- For example: If you have placed human figures and equipment for a track work crew alongside the track and want them to be seen in a daylight Session but not in a night Session, then place them in one of the Session Layers of the daylight Session only. Likewise, station staff holding lamps would be placed in one of the Session Layers of the night Session only.
- Consists used in a Session.
|
|
- It is a good idea to place ALL the consists in the same Session Layer particularly if they are going to be coupled together during the running of a Session.
- When you first save a Session, give it a distinctive and informative name. Avoid the temptation to use Default as the name of your Session as you can easily end up with several Sessions under the same Route all called Default.
|
Adding Objects To Layers
When an object (such as a scenery item, consist, track or track object) is added to the layout it is automatically placed in the currently Active Layer. Unfortunately, Trainz does not indicate which layer is the Active Layer unless you open the Layers Tool to look. This can lead to objects being placed into the wrong layers and while these objects can later be moved to another layer (see the section Moving Objects To Other Layers below) it would be better to correctly set the Active Layer first.
|
It is good practice to LOCK ALL LAYERS that you are not currently editing. This will avoid the all too common problem of accidentally adding objects to the wrong layer. |
|
You cannot add objects to a layer that is LOCKED. |
If you attempt to add a scenery object to a locked layer you will receive the following message:-
- Click the icon to UNLOCK the layer.
|
|
When adding track objects (signals, speed signs, etc) to a track, the objects being added must be in the same layer as the track or in a layer below the track layer. For more information, see the section The "route-layer" above. |
|
Notes:
There are many features of Trainz Routes and Sessions that are NOT stored in layers. These include:-
- landforms
- textures
- trackside camera positions and settings
- weather conditions
- time of day
- session rules and driver commands
- signal and junctions settings
- rolling stock loads
- industry settings
- portal settings
- passenger station settings
- navigation points
- interlocking tower settings^
Landforms, textures and trackside cameras are saved as part of the Route while all the others are saved as part of a Session.
^ A bug has been reported in the Interlocking Towers (and the Enhanced Interlocking Towers) where the path and settings are initially saved in the Route but any later edits and changes are then saved in the Session. The workaround for this is to always load the Session when working with ITs and EITs.
|
Deleting Objects From Layers
|
It is good practice to LOCK ALL LAYERS that you are not currently editing. This will avoid the all too common problem of accidentally deleting objects from the wrong layer. |
|
You cannot delete objects from a layer that is LOCKED. |
Unfortunately Trainz does not give you a warning message when you attempt to delete an object from a locked layer, the object just refuses to be deleted.
|
If you cannot delete an object then check:-
- that the objects layer and bound layer (if set) are unlocked
- that you are using the correct delete tool (e.g. such as attempting to delete a tree with the spline, signal or rolling stock delete tool) - it happens!
|
Moving Objects To Other Layers
The Bound Layer
This is a little used and probably little understood layer feature. It allows you to attach an object to two different layers so it can have the properties (locked/unlocked and show/hide) of both layers. The bound layer was introduced as a development tool, its sole use is as a tool in the building of routes and sessions.
|
An object will be LOCKED and cannot be deleted or moved if its layer OR its bound layer is locked.
|
|
An object will be HIDDEN if its layer OR its bound layer is hidden.
|
Some applications:-
- Temporarily locking an object by binding it to a locked layer while allowing other objects in the same unlocked layer to be moved or deleted. A simple but very effective development technique is to create a Route layer called "Locked" and then lock it. If you need to temporarily stop an object from being deleted or moved then it can be bound to the "Locked" layer.
- Temporarily hiding an object by binding it to a hidden layer (this will require the hidden layer to be made visible so the object can be unbound).
|
|
|
Steps:
In the Properties Window of an object:-
- Click the Bound Layer box or one of its scroll buttons
- Select the layer to be used as the Bound Layer for the object (an object cannot be bound to its own layer)
The effects of the binding can be reversed by setting the Bound Layer back to <none>. |
|
|
|
When a layer is deleted any objects bound to that layer will have their Bound Layer reset to <none>
|
|
If you are going to be working with multiple objects that will be bound to a locked or hidden layer then a simple strategy is to:-
- Create a new empty layer called "Locked" or "Hidden" and lock or hide that layer, according to your needs
- Bind the individual objects to that layer as required
- When editing, testing or whatever you are doing has been completed simply delete the new layer. All objects that have been bound to that layer will have their Bound Layer property reset to none so the hidden objects will reappear and the locked objects will be unlocked.
|
|
If you need to remove an object from a route but cannot alter the route (e.g. it is payware or under another users kuid) then create a new hidden session layer and change the bound layer of the object to the hidden layer. This will be treated as a change to the session only and Trainz will not ask you to save the route as well as the session. |
Layers in Driver Mode
During the running of a Session in Driver Mode visible layers can be hidden and invisible layers revealled according to the events that occur during the Session.
|
The two Driver Mode scenes shown on the left illustrate this feature.
- In the first image on the left, all layers are visible
- In the second image on the left, two of the layers have been hidden
The trigger for this change was the arrival of a train at the platform. |
This effect could be achieved in two different ways:-
- A Driver Command - specific to a particular driver, or
- A Session Rule - specific to a particular driver, consist, or any driver/consist
Using a Driver Command
The driver command Layer Control hides and shows named layers.
Using Session Rules
|
Rules Used:
|
|
Session Editor Screenshot:
|
|
Description:
|
In this example:-
- The Trackside Check Rule is triggered when a specific train comes to a stop at a trackmark. This then executes the following rules:-
- The Show/Hide Layer Rule is used to hide the layer named "People". Four passengers (three standing and one seated) are hidden.
- The Show/Hide Layer Rule is used to hide the layer named "CNJCartsFull". The boxes and mail bags on the three platform trolleys are hidden.
- The Message Popup Rule is used to place a message on the screen informing the player that the passengers and mail have been loaded.
Trainz Wiki
|
More Tutorials and Guides to Using Trainz
|