Home

Awesome

NoiseRings

NoiseRings is a noisy emanating ring effect for Unity adapted with permission from the VR music video experience Chorus. Tested with Unity 2018.3.0f2.

Noisy rings emanate from a central source

Usage

An example is provided in Assets/Example/ExampleScene.unity. Attach a NoiseRingSource component to the GameObject you would like the noise rings to emanate from. For the NoiseRingSource to render correctly the UpdateShaderGlobals component must be attached to a GameObject in the scene. The noise ring animation can be triggered by calling Trigger() on the NoiseRingSource.

Settings

NameTypeDescription
Number Of SegmentsintNumber of segments in the generated ring mesh. Increase this value if the rings appear too jagged.
Number Of RingsintNumber of rings to emanate when the animation is triggered.
Radial OffsetfloatRadial distance between the rings when emanated. This allows you to control how far apart the rings appear to be spaced. Note that the distance will shrink as the animation progresses and the rings will converge at the end.
Line TextureTexture2DTexture to use for rendering the ring lines. The texture will be stretched horizontally around the circumference of the ring.
ColorColorLine color.
MultiplierfloatLine color multiplier.
Line WidthfloatLine width. This is scaled with the transform's z scale value.
Noise ScalefloatScale of the noise applied to the rings. Higher is bumpier, lower is smoother.
Noise HeightfloatHow much the noise affects the height of the rings.
Detail Noise ScalefloatScale of the detail noise applied to the rings. Higher is bumpier, lower is smoother.
Detail Noise HeightfloatHow much the detail noise affects the height of the rings.
SpeedfloatSpeed at which the noise changes.

Animation Settings

NameTypeDescription
Animation DurationfloatTotal duration in seconds for the animation to complete after being triggered.
End RadiusfloatThe final radius the rings will reach and converge at.
Intensity CurveAnimationCurveCurve that determines how much the noise affects the rings as they progress outward.
Max HeightfloatMaximum height above the ground the rings will reach.
Height CurveAnimationCurveCurve that determines the height of the rings relative to the max height as they progress outward.

Public Methods

NameReturn TypeDescription
Trigger()voidTriggers the animation.
EndAnimation()voidEnds the animation early.
AnimationDuration()floatReturns the animation duration.