More Pages:

../images/architecture/2020/railings/thumbs/01.jpg
2 Railings
../images/architecture/2021/splexamples/thumbs/01.jpg
3 Examples
../images/architecture/2020/doors/thumbs/01.jpg
Doors
../images/architecture/2020/books/thumbs/01.jpg
Books

Part 1: Generic Meshes On Spline Documentation

A Blueprint that gives you many possibilities to place meshes along a spline.

Content:

Placement Logic

Mesh Sequence

Section Sets

Sections

Placement

[fixed] Crash in 4.26 while copying spline

This blueprint gives you many ways to place instances of meshes along a spline. Examples are shown in this picture:
  • Railings
  • Bushes in multiple rows placed with random scale, location and rotation
  • A building facade
  • The roof of a building made out of 2m x 2m modules
  • A row of pillars
  • Steps and paths made out of small pieces

image

Placement Logic

The hierarchy for this blueprint is as follows
  • Sets - A set extends over the full length of the spline
  • Sections - Sets can be split up in Sections
  • Placements - Sections can have multiple Placements on top of each other.
  • Mesh Sequences - or a single mesh are placed through the Placement logic over the length of the Section.

Sets and Sequences can have copies. A copy would be a direct replication of the Set or Sequence. For example multiple rows of chairs in a theater. All mesh copies are rendered in a single draw call to improve the performance of the scene.

image

Mesh Sequence

> Meshes
> Mesh Sequence 3 Array elements A sequence (group) is either a single mesh or a sequence of different meshes that repeat within the placement.
> 0 2 Array elements The first sequence (group) of meshes. Can be a single mesh.
> Mesh 1 Array element The meshes for this sequence
> 0 7 members first mesh of this sequence
Description Window 270 a note for you about this mesh
Static Mesh P_ WinAlu01 ... Pick a mesh from the browser
Amount 3 how many meshes will be repeated within the sequence. Here there are 3 windows between each metal pole.
> Materials 1 Array element Optional list of replacement materials per material id
Orientation 90.0 degrees Use the drop down menu to align the mesh correctly along the spline
Overlap 0.0 This will overlap the next mesh instance with the current one.
> Mesh Transform Location
Rotation
Scale
This can compensate any misalignements with the spline
Do not use the Z rotation. Use Orientation instead
Scale the mesh here. It will effect the placement calculation
GroupGap 15.0 This makes room for another placement at the end of this mesh sequence.

image

Section Sets

> Sections
> Section Sets 2 Array elements A Set extends over the entire spline. Sections are subdivisions of Sets.
> 0 6 members The first set for the spline. You can have multiple sets per spline.
SetName lower windows Just a note for you.
> Set Transform Location
Rotation
Scale
This will transform the Set and all its content relative to the spline. Only location and Scale transforms make senes here.
StartOffset 0.0 Use this to inset the sets content at the start of the spline
EndOffset 0.0 a note for you about this mesh
> Sections 1 Array element Add sections here. See next chapter.
> SetCopies 1 Array element Copies of the entire set. You can have multiple arrays of copies here
> 0 2 members The first set of copies
Copies X 0 How many copies you want. Location offset will be incremental for each copy.
> Location Offset X Y Z Incremental offset for the set copies.

image

Sections

> Sections 1 Array elements A Set extends over the entire spline. Sections are subdivisions of Sets.
> 0 7 members The first section of the set.
SectionName   Just a note for you.
Section Distance Type Fill Remaining The section will grab a part of the remaining unfixed space based on the SectionDistance
  Fixed Distance A fixed distance given as Section Distance.
  From Placements The section size will be set to the largest placement's size of this section.
  Fixed Gap A fixed empty gap. Remove all placements from this secion to make this work.
Section Distance 100.0 A fixed distance or the relative distance for section set to fill the space.
Section End Offset 0.0 Will offset the next section effectively making this section shorter.
> Section Transform Location
Rotation
Scale
This will transform the Section and all its content relative to the spline. Only location and scale transforms make sense here.
> Placements 2 Array element Add Placements here. See next chapter.
> Section Copies 1 Array element Copies of the entire set. You can have multiple arrays of copies here
> 0 2 members The first set of Section copies
Copies X 0 How many copies you want. Location offset will be incremental for each copy.
> Location Offset X Y Z Incremental offset for the Section copies.

image

Placement

> Placements 2 Array elements Placements of meshes or sequences for the current Section.
> 0 10 members The first Placement of the set. Placements are put 'on top' of each other.
Mesh Group ID 0 The ID of the Mesh or Mesh Sequence you have set up in the Meshes section.
Rotation Mode Look at next instance The mesh will line up with the next instance along the spline
  Spline rotation The mesh will be rotated like the spline rotation. Use for poles.
  Default The rotation set in the Mesh Sequence transform
Placement Mode Fill and stretch The Section will be filled with the closest number that fits and then all meshes will be stretched to fit exactly.
  Fill but don't stretch The Section will be filled with the closest number leaving a gap at the end
  Fill with amount stretched The Section will be filled with a given amount and the meshes will be stretched to fit exactly.
  Fill with amount Add a given amount equally spread over the Section. For poles, trees etc.
  Manual Add a given amount of meshes and leave the rest empty.
  From Placement ID Use the logic of another Placement ID
  Spline Mesh Use a spline mesh that can bend along the spline. The mesh will need extra sub divisions to be bend. The Spline will need extra spline points for a smooth curve.
From Placement ID 0 The ID of another Placement used for the current Placement's logic.
Amount Of Instances 1 Amount for manual placements (excluding the end point)
Place On Start Point true The first mesh will be placed
Place On End Point false A final mesh will be placed at the end of the section. Good for poles or trees, etc.
Use Random false If true every mesh (group) will be randomly transformed with below values.
> Random Transform Location
Rotation
Scale
This wil randomly transform every instance. For example a location offset X=20 will transform a random value between -10 and +10.
> Incremental Offset X Y Z Incremental offset for the Placement copies.

image

[fixed] Crash in 4.26 while copying spline

[Fixed Feb 2021] Update to the latest version to fix this issue.

In version 4.26.0 of the editor duplicating or copy/pasting this blueprint will crash the editor. Here is an easy fix you can do to avoid this crash:

  • Double click the BP_GenericMeshesOnSpline to open it.
  • Find the variable ActualDistance
  • Click on the bin icon to remove the default values.
  • Find the variable ActualStartPoint
  • Click on the bin icon to remove the default values.
  • Compile the blueprint
  • Save the blueprint

Now you should be able to copy and paste this blueprint.

image
Top of page