Graph Editor
The Graph Editor is a pre-release feature of Trainz. It has been discussed publicly in the TrainzDev forums and is summarised on this page, however users should understand that no release schedule has been provided for this feature. All discussions and details are speculative in nature and may not accurately reflect the final form of this feature.
Broad Overview
The Graph Editor offers a new way of interacting with various components in the Trainz environment. The editor itself offers generic capabilities allowing various types of node to be created in the graph, inputs and outputs to be connected together, and properties to be viewed and set on each node. The Graph Editor itself does not define any node types, nor does it define any outcomes from the individual nodes or the overall graph. It is simply a generic editor. Context is provided by the specific environment in which the graph is composed and used.
A given graph is comprised of "Nodes" and "Connections". Each Node may offer some number of inputs and/or outputs. The user may create any number of nodes in the graph and then connect the inputs and output together to form a simple program. Each node is of a pre-defined type, selected by the user from a library of Node Types relevant to the editing context.
Editing
TBD.
Use Cases
There are many use cases for the Graph Editor. Some of the more obvious potential uses include:
- Building custom material shaders.
- Building custom post-process shaders.
- Building procedural physics models.
- Building procedural engine sound synthesisers.