Procedural spline audio PRO

Enhance your game audio with procedural spline based sound. Sound which follows listener along spline component.

Step 1

Add listener from your Game mode, Game instance or any other global class (Best on begin play node). Listener should be game pawn. Right click -> type set Listener (Volumetric audio). See VIDEO.

NOTICE: without listener properly set PSA system won't work.

Step 1.a

For network game add listener from your player controller class(After client spawning). Listener should be controller pawn. Right click -> type set Listener (Volumetric audio). See VIDEO.

NOTICE: without listener properly set PSA system won't work.

Step 2

Find BP_ProceduralSplineAudio (ProceduralSplineAudio content/Blueprints) and add it to any map.

Step 3

In the details panel set preferred settings for your volumetric audio object.

  • Activate on begin play - by default all volumetric sounds are active from the begging of the game. If you want to optimize, un-check this flag and just call Activate node from volumetric audio object reference.

  • Sound cue - a sound cue in which all sound logic is set.

  • Debug -debug spline points, closest location and distance percentage. See VIDEO.

  • Enable switch wave source - if enabled when you want to change the sound wave after certain point on spline component. See VIDEO.

  • Switch parameter name - name of the parameter in the sound cue which triggers switch logic based on spline point integer.

  • Enable overwrite volume/pitch multiplier along spline- if enabled it automates the pitch/volume multiplier value in realtime from current sound position on the line (spline). The value interpolates from 0-1 (from zero point to last point on the line). Can be modified to suit your needs.

BONUS:

Spline audio component

BP_SplineAudioComponent - can be added to any actor class, and you can retrieve useful information as used in BP_ProceduralSplineAudio blueprint. This can be used for any scenario not only audio related. Functions:

  • GetClosestLocationOnSplineToListener - returns closest location on spline from listener world location

  • GetDistanceAlongSplinePrecentage - returns closest location distance percentage along spline from start to finish (0-start, 1-end).

  • GetDistanceAlongSplinePrecentageForPoint - returns distance percentage along spline for given point on spline.

  • GetAllPointsDistancesPercentage - returns all points and their distance distance percentage along spline.

IMPORTANT: Limitations

When point is inverted and acute like the one in the image, panning issues may occur. This can be solved and depends upon Non specialized radius settings in the sound cue.

Questions?

Contact dino.duvnjak24@gmail.com to get more information about the project