Rendering Best Practices

Introduction

RailClone includes native shaders the renderers listed below, making it possible to render high-poly objects over splines as long as kilometers:

  • Mental Ray
  • V-Ray
  • V-Ray RT
  • Thea Render
  • Corona Renderer
  • Moskito Render

Usually these techniques push a rendering engine to its limits. The following notes include technical information that can help you to optimize your renderings.

Feature Compatibility 

Due to technical limitations, feature support varies between renderers. The table below illustrates the compatibility of RailClone's key features with each render engine.

Fully compatible features are marked with a ✓ and highlighted in green

Partially supported features are marked with a  ✗* and highlighted in yellow. These can be enabled by turning off the instancing engine.

Unsupported features are marked with a ✗ and highlighted in red

  Standard V-Ray V-Ray RT Mental Ray Corona Thea Octane Maxwell Moskito Arion
Native Instancing
Create Instances using RailClone Tools
Automatic UVW Mapping ✗* ✗* ✗* ✗* ✗* ✗* ✗* ✗* ✗*
Debug Mode
Generators  
L1S
A2S
Base Objects  
Segment
Spline
Surface
Parameters  
Numeric
Constant
Random
Operators  
Material ✗* ✗* ✗* ✗* ✗* ✗* ✗* ✗* ✗*
Conditional
Randomise
Sequence
Selector
Compose
Reverse
Transform
Mirror
Arithmetic
UVW XForm ✗* ✗* ✗* ✗* ✗* ✗* ✗* ✗* ✗*

Common Tips

RailClone is able to create complex parametric structures by cloning and adapting mesh objects (called Segments) along one or more reference objects (such as spline). According to the spline's direction, elevation or other parameters, some Segments must be deformed and other simply cloned.

In the supported engines, it's possible to render thousands of instances of the same object using minimal resources. RailClone uses this feature, identifying which Segments may be cloned, and creating native render instances of them. This process is automatic and invisible to the user, but you can optimize your renderings by paying attention to the following rules:

  • If you are certain that a type of Segment should never be deformed (such as pillars or joints), turn off 'Bend' in the Segments parameters. The same is applicable for 'Slice'.
  • It is possible to use meshes or proxies as Segments, but it is not necessary to convert high-poly objects to proxies to get better performance. The plugin converts all objects to native render instances internally, so there are no significant differences (on render time and memory used) between using meshes or proxies.
  • Proxies cannot be deformed, so RailClone always creates instances from them, but obviously they cannot be bent or sliced.

Some features are not available when using the native render mode:

You can switch to the standard render mode turning by off Display->Render->Use Instancing Engine. When this is used the plugin creates a single mesh containing all the geometry.

In any case, you can use RailClone Tools to generate the instanced geometry manually. This procedure is compatible with all render engines. 

V-Ray Tips

RailClone offers some unique features using this render engine:

  • Improved performance and reduced memory footprint for very large objects, generating the geometry dynamically inside the camera frustrum.
  • We have included a debug mode, to identify visually from the render what segments are instanced. How to use it:
    1. Go to Display>Debug Mode and turn on Show Up Instances
    2. The default material ID is set to 100, leave this as it is or if you prefer, set to another number.
    3. Apply a multi-sub material that includes a material set to the ID specified in the previous step.
    4. All instanced geometry will be allocated the ID specified above and will render with the associated material.

Instanced segments are shown in blue color