Yasiu Spline Meshed 1
Extension of basic spline for use with meshes.
Loading...
Searching...
No Matches
SplineMeshedComponent.h File Reference
#include "CoreMinimal.h"
#include "Engine/StaticMesh.h"
#include "Components/SplineComponent.h"
#include "Components/SplineMeshComponent.h"
#include "Engine/OverlapResult.h"
#include "SplineMeshedComponent.generated.h"

Go to the source code of this file.

Classes

struct  FSplineSinusParams
 Parameters for sinus. More...
struct  FSplineHelixParams
 Parameters for helix. More...
struct  FSplineMeshed_PointTangent
 Symmetric spline point representation. More...
struct  FVectorRange
 Pair of 2 vectors representing Min and Max values of XYZ. More...
struct  FSplineRandomness
 Params used for randomizing each mesh. More...
struct  FSplineMeshedCollision
 Parameters used to set simple collision on mesh. More...
struct  FSplineMeshedSpawnParams
 Parameters used to customize mesh spawn along spline. More...
struct  FSplineSmoothParams
 Struct used in editor tools to modify spline. More...
struct  FSplineDebugParams
 Params for drawing collision checks. More...
struct  FSplineDetectionTestParams
 Params used for collision check along spline. Some variables are mirrored to match unreal engine's **FCollisionQueryParams **. More...
struct  FSplineMeshedOverlapResult
 Collision results returned for use in BP. More...
struct  FYasiuSplineMeshParams
 SplineMesh parameters passed between functions. More...
class  USplineMeshedComponent
 Core component that handles meshes spawning along spline. More...
struct  FSplineMeshed_ExtendedParams
 Params used in subclasses USplineMeshedComponent_Extension. More...
class  USplineMeshedComponent_Extension
 Abstract class that uses bridge pattern. More...
class  USplineMeshedComponent_ExtendedToSinus
 Modified USplineMeshedComponent that spawns meshes in zigzag/sinus pattern. More...
class  USplineMeshedComponent_ExtendedToHelix
 Modified USplineMeshedComponent that spawns meshes in helix pattern. More...

Enumerations

enum class  ESplineRotateMode : uint8 {
  ConstantAbsolute , ConstantRelative , Default , DefaultFixed ,
  SmoothRoll
}
 Method that solved mesh rotation along spline. More...
enum class  ESplineMeshStretching : uint8 {
  NoStretching , StretchOnlyLast , MinimalStretchOnAll , ItemPerSegment ,
  PipeStretching
}
 Method that decides how to place meshes. More...

Enumeration Type Documentation

◆ ESplineMeshStretching

enum class ESplineMeshStretching : uint8
strong

Method that decides how to place meshes.

Enumerator
NoStretching 

Only full meshes will be spawned.

StretchOnlyLast 

Last mesh will stretch to fit to end.

MinimalStretchOnAll 

Fit segments from start to end. Applies minimal and equal stretch to all segments.

ItemPerSegment 

Places mesh object to fill single segment from point to point.

PipeStretching 

Stretch meshes to make seamless connection at offset. (Can not use randomness).

◆ ESplineRotateMode

enum class ESplineRotateMode : uint8
strong

Method that solved mesh rotation along spline.

Enumerator
ConstantAbsolute 

Same UpVector for all meshes (World orientation).

ConstantRelative 

Same UpVector for all meshes. Relative to component orientation (or owning actor).

Default 

Gets spline's UpVector and copies it without modification. Good for horizontal splines.

DefaultFixed 

(Same as Default) Fixes rare twist artifacts when mesh is spawn on opposite spline side. Meshes can sometimes overlap inplace where artifact was fixed.

SmoothRoll 

Keep side faces aligned through whole spline smoothly. Good for vertical splines, but rotates more and doesn't keep orientation.