Skip to content
Data Asset

Data Asset

The Powerline Data Asset serves as a centralized configuration container that stores static properties for powerline systems. By separating this data from the actor itself, it enables efficient management, rapid prototyping, and easy sharing of settings across multiple powerline instances in your project. The asset is organized into two sections:

  • Powerline
  • Cable (containing cable-specific properties).

Powerline Reference

Below is a complete list of all powerline related properties.

Poles

The Pole Array defines the library of static meshes which are used as support meshes. Includes weighted probability that controls how often each mesh is selected during generation.

Array of poles

The powerline actor uses a random stream to select meshes based on these weights, weight value in range of 0-100 that determines its likelihood of being chosen. A value of 0 completely excludes the mesh from selection.
You can add any number of mesh entries.


Sockets

Static mesh sockets serve as the primary connection points for cable generation. Cables are automatically created between matching sockets on consecutive poles within the powerline system.

Visualization of pole sockets as cable attachment points

To add a custom socket to a static mesh for cable generation, follow these steps:

Add Socket

Navigate to the Socket Manager tab within the Static Mesh Editor and click the + button to create a new socket. Interface for adding a new socket

Configure Socket Name

Rename the socket from its default name to something descriptive and consistent, such as Cable_01 or Cable1.

Cable generation matches sockets based on their exact name across different poles. Consistent naming is essential for proper connections.

Set Socket Transform

Position and orient the socket using the viewport manipulator or by entering precise values in the Details panel.
Socket transformation controls

Add Socket Tag

Click the Advanced menu, find the tag variable, and enter Cable or cable.

Socket tag

A cable requires a socket tag to generate. This system allows adding and using custom sockets unrelated to cable generation.

Powerline Properties

Mesh Type

  • Static Mesh: Places a standard static mesh at each spline point.
  • Spline Mesh: Deforms the mesh at a spline point using start and end tangents.
  • ISM: Places an instanced static mesh component at each spline point. Same as HISM, could be usefull with Nanite meshes.
  • HISM: Places an hierarchical instanced static mesh component at each spline point.
    This is a good way to optimize draw calls when pole mesh variation is low.
VariableDefaultDescription
MobilityMovableGlobal actor mobility. All generated components inherit this mobility type per Unreal requirements.
Spline Mesh AxisXSpline Mesh only.
Defines which local mesh axis aligns with the spline direction.
Cull Distance Start End0,0ISM and HISM only.
Maximum cull(render) distances for an instanced pole mesh. X = start, Y = end.
Base Pole YawGlobal rotation applied to all poles around the vertical (Z) axis.
Useful for correcting imported meshes that are not oriented to the desired world alignment.
Pole Material PresetsEmptyAn array of material presets. Each preset is itself an array of materials to apply to the pole meshes.
• Each material’s slot name must match a static mesh material slot.
• This system allows switching between different materials (presets), each of which can configure one or more material slots on the mesh.
Pole Max Draw Distance0Maximum render distance for pole meshes. Set to 0 for infinite draw distance.
Pole Collision ProfileBlockAllPhysics collision profile assigned to pole meshes.
Generate OverlapsfalseEnables overlap events for pole meshes when set to true.
Cast ShadowstrueControls whether poles and cables cast dynamic shadows.

Cable Reference

Below is a complete list of all cable properties.

Materials

Cable materials data is a customizable struct that serves as a container for cable UVs and materials, offering full control over generated cable UVs. Each entry can be selected randomly or manually by the powerline actor.
Atlas mode enables offsetting and scaling on the minor axis, allowing trim or atlas textures to reduce draw calls. Unique materials each add a mesh section to the procedural cable mesh, incurring an extra draw call. However, the same material used across different entries with varying UV parameters will be batched into a single mesh section.
Materials are also useful for default powerlines to create randomized wind effects.

CableMaterials/CableMaterials_1.png
Regular
CableMaterials/CableMaterials_2.png
Altas or trim
VariableDefaultDescription
TextureRegularSwitches between regular and atlas modes.
Regular: a standard tiled texture.
Atlas: for tiled trim textures, allows manipulation of UVs on the minor axis.
MappingRelativeRelative: maps UVs based on cable length using the spacing value.
Tile: allows independent control of texture tiling regardless of cable spacing.
Tile Size40Controls the scale of texture tiling along the cable length in Unreal units (only affects Tile mapping type).
Flip UVfalseSwaps UV orientation between vertical (Y) and horizontal (X) axes. Default uses Y-axis (vertical) alignment, matching the example textures. Useful for rotated source textures.
Scale1.0Allows scaling of cable UVs on the minor axis. Minimum value is 0.01.
Offset0.0Allows offsetting of cable UVs on the minor axis. Clamped to -1 to 1.

Wind

Wind properties are designed specifically for use with a dedicated cable material and are stored in the vertex colors of the cable mesh.

If wind animation is not needed, disable vertex color writing by setting the EnableWind variable to false (default is true).

ChannelDescription
R (Red)Wind mask – calculated from contrast, sharpness, and intensity properties to define where wind deformation occurs.
G (Green)Random time offset – a per-cable random value (0–1) added to the wind animation time to create variation.
B (Blue)Random strength modifier – a per-cable random value (0–1) used to interpolate between minimum and maximum wind strength values.

Visualization of all vertex color channels:
Wind vertex colors

Random values in G and B channels:
Wind random vertex colors


Wind Mask Properties

Wind Contrast – Amplifies the wind effect by multiplying both strength and sharpness values. Provides additional control over wind definition.

WindContrast/Contrast_1.png
Contrast 0
WindContrast/Contrast_2.png
Contrast 1
WindContrast/Contrast_3.png
Contrast 3
WindContrast/Contrast_4.png
Contrast 10

Wind Sharpness – Controls the falloff gradient of the wind effect from cable endpoints toward the center. Higher values create a more abrupt transition.

WindSharpness/Sharp_1.png
Sharpness 0
WindSharpness/Sharp_2.png
Sharpness 0.5
WindSharpness/Sharp_3.png
Sharpness 1

Wind Intensity – Global multiplier for the final wind effect. Combines the data asset intensity with the powerline actor’s global wind intensity setting.

WindIntensity/Intensity_1.png
Intensity 0
WindIntensity/Intensity_2.png
Intensity 0.5
WindIntensity/Intensity_3.png
Intensity 1


Cable Properties

Cable Sides

Controls the number of radial segments around each cable, directly affecting mesh smoothness, performance, and vertex count.

  • Minimum: 3 sides (creates a triangular cable cross-section)
  • Maximum: Clamped to 16 sides
  • Default: 4 sides (produces a square cross-section that looks appropriate for default powerlines)
Performance Impact: Each additional side increases calculation time for cable generation and adds more vertices/triangles to render.

Visual Comparison:

CableSides/Sides_1.png
Sides 3
CableSides/Sides_2.png
Sides 4
CableSides/Sides_3.png
Sides 6
CableSides/Sides_4.png
Sides 10
CableSides/Sides_5.png
Sides 16


Cable Spacing

Controls the segment length along the cable’s path, affecting both geometric smoothness and UV mapping granularity.

  • Minimum: 10 units (creates very dense, smooth cables)
  • Maximum: 1000 units (creates very low-poly cables with large segments)
  • Impact: Higher spacing values reduce triangle count but may create angular bends; lower values increase smoothness at performance cost.

Visual Comparison:

CableSpacing/Spacing_1.png
Spacing 10
CableSpacing/Spacing_2.png
Spacing 40
CableSpacing/Spacing_3.png
Spacing 80
CableSpacing/Spacing_4.png
Spacing 160


VariableDefaultDescription
Cable Radius3.0Defines the thickness of the cable in Unreal units.
Cable Max Draw Distance0Maximum rendering distance for cable meshes. Set to 0 for infinite draw distance.
Note: Works with both procedural and merged static mesh.

Custom Data Asset

Follow the steps below to create a custom data asset.

Content Browser

Navigate from the Content Browser to Miscellaneous → Data Asset as shown below: Navigate from content browser

Create New Asset

In the pop-up window, find and select the Powerline Data Asset class. Press the Select button, then enter a name for your custom data asset (for example: DA_CustomPowerline). Create new data asset

Last updated on