Splines in daEditor
More detailed information can be found here: spline.blk.
Splines and Render Instances (Rendinsts)
Removing Render Instances Along the Spline
Splines can remove both render instances generated at runtime (from masks and scripts) and those saved in the level (generated via splines).
a) To remove render instances generated by masks or scripts, use the parameters in the spline class:
sweepWidth:r=
- distance from the center of the spline to the end of the “cleared area”.addFuzzySweepHalfWidth:r=
- distance from the center of the spline to the end of the sparse space, used to create irregular edges.
b) To remove render instances generated along splines, use:
sweep2Width:r=
addFuzzySweep2HalfWidth:r=
Additionally,
startPadding:r=
andendPadding:r=
define a distance from the start and end of the spline where objects are not generated (useful for roads that lead into bridges).
To split spline-generated assets into separate entities, use the command Landscape ▸ Instantiate gen. objects into separate entities.
Rendering Along a Loft Instead of a Perfect Spline
To generate instances along a loft, accounting for its curves and twists, enable:
storeSegsForGen:b=yes
in the loft generation block.useLoftSegs:b=yes
either in the object generation block (for a specific object) or anywhere after the loft definition (for all objects).
Splines as Modifiers
Splines can act as modifiers for heightmaps or land meshes (delanoy).
Sorting Order of Lofts in the Clipmap During Rendering
Order of Spline Classes
This order is set in the daEditor (using the place layer order switch) or in the
splines.blk
of a specific location (vialayerOrder:i=
with values ranging from0
to2
). The higher the value, the higher the spline sits in the rendering layer. This also applies to decals. The priority of splines is higher than that of lofts. To place a decal above a spline, addscript:t="layerOrder=n"
to the decal where n is the desired layer.
Order of Loft Rendering
Each loft within a spline has a rendering order defined by
loftLayerOrder:i=
. The higher the number, the higher the loft appears in the rendering stack. By default, all lofts are at layer 0.
Decals Above Splines
To render decals on top of all splines, check if the box in Exported Parameters ▸ Geom: render loft below all is checked in the daEditor.
Additional Notes
Straight Segments: When creating a spline, holding
Shift
forces the spline to consist of straight segments instead of curves (each node switches to corner mode).Tight Fence Orientation: To make objects placed along a spline form a continuous chain, add:
tightFenceOrient:b="yes"
in the spline class (within theobjGenerate{}
block).
Asset Orientation Types in the Spline Class
orientation:t="fence_normal"
orientation:t="fence"
orientation:t="normal"
orientation:t="spline"
: assets are aligned parallel to the spline.orientation:t="spline_up"
orientation:t="world"
orientation:t="world_xz"
orientation:t="normal_xz"
Additional Parameter
zeroOpacityDistAtEnds:r=2: This parameter sets zero opacity at the spline’s end vertices (distance in meters). It is applied at the root of the spline.