Feel  3.16
The best way to improve your game's feel and make it extra juicy
MoreMountains.Feedbacks.MMAudioFilterReverbShaker Class Reference

Add this to an audio reverb filter to shake its values remapped along a curve More...

Inheritance diagram for MoreMountains.Feedbacks.MMAudioFilterReverbShaker:
MoreMountains.Feedbacks.MMShaker MoreMountains.Tools.MMMonoBehaviour

Public Member Functions

virtual void OnMMAudioFilterReverbShakeEvent (AnimationCurve reverbCurve, float duration, float remapMin, float remapMax, bool relativeReverb=false, float feedbacksIntensity=1.0f, MMChannelData channelData=null, bool resetShakerValuesAfterShake=true, bool resetTargetValuesAfterShake=true, bool forwardDirection=true, TimescaleModes timescaleMode=TimescaleModes.Scaled, bool stop=false, bool restore=false)
 When we get the appropriate event, we trigger a shake More...
 
override void StartListening ()
 Starts listening for events More...
 
override void StopListening ()
 Stops listening for events More...
 
- Public Member Functions inherited from MoreMountains.Feedbacks.MMShaker
virtual float GetTime ()
 
virtual float GetDeltaTime ()
 
virtual void ForceInitialization ()
 Call this externally if you need to force a new initialization More...
 
virtual void StartShaking ()
 Starts shaking the values More...
 
virtual void Play ()
 Starts this shaker More...
 
virtual void Stop ()
 Stops this shaker More...
 
virtual float ComputeRangeIntensity (bool useRange, float rangeDistance, bool useRangeFalloff, AnimationCurve rangeFalloff, Vector2 remapRangeFalloff, Vector3 rangePosition)
 

Public Attributes

bool RelativeReverb = false
 whether or not to add to the initial value More...
 
AnimationCurve ShakeReverb = new AnimationCurve(new Keyframe(0, 0f), new Keyframe(0.5f, 1f), new Keyframe(1, 0f))
 the curve used to animate the intensity value on More...
 
float RemapReverbZero = -10000f
 the value to remap the curve's 0 to More...
 
float RemapReverbOne = 2000f
 the value to remap the curve's 1 to More...
 
- Public Attributes inherited from MoreMountains.Feedbacks.MMShaker
MMChannelModes ChannelMode = MMChannelModes.Int
 
int Channel = 0
 the channel to listen to - has to match the one on the feedback More...
 
MMChannel MMChannelDefinition = null
 
float ShakeDuration = 0.2f
 the duration of the shake, in seconds More...
 
bool PlayOnAwake = false
 if this is true this shaker will play on awake More...
 
bool PermanentShake = false
 if this is true, the shaker will shake permanently as long as its game object is active More...
 
bool Interruptible = true
 if this is true, a new shake can happen while shaking More...
 
bool AlwaysResetTargetValuesAfterShake = false
 if this is true, this shaker will always reset target values, regardless of how it was called More...
 
bool OnlyUseShakerValues = false
 if this is true, this shaker will ignore any value passed in an event that triggered it, and will instead use the values set on its inspector More...
 
float CooldownBetweenShakes = 0f
 a cooldown, in seconds, after a shake, during which no other shake can start More...
 
bool Shaking = false
 whether or not this shaker is shaking right now More...
 
bool ForwardDirection = true
 
TimescaleModes TimescaleMode = TimescaleModes.Scaled
 
virtual MMChannelData ChannelData => new MMChannelData(ChannelMode, Channel, MMChannelDefinition)
 
virtual bool ListeningToEvents => _listeningToEvents
 

Protected Member Functions

override void Initialization ()
 On init we initialize our values More...
 
virtual void Reset ()
 When that shaker gets added, we initialize its shake duration More...
 
override void Shake ()
 Shakes values over time More...
 
override void GrabInitialValues ()
 Collects initial values on the target More...
 
override void ResetTargetValues ()
 Resets the target's values More...
 
override void ResetShakerValues ()
 Resets the shaker's values More...
 
- Protected Member Functions inherited from MoreMountains.Feedbacks.MMShaker
virtual void Awake ()
 On Awake we grab our volume and profile More...
 
virtual void ShakeStarts ()
 Describes what happens when a shake starts More...
 
virtual void Update ()
 On Update, we shake our values if needed, or reset if our shake has ended More...
 
virtual float ShakeFloat (AnimationCurve curve, float remapMin, float remapMax, bool relativeIntensity, float initialValue)
 A method used to "shake" a flot over time along a curve More...
 
virtual Color ShakeGradient (Gradient gradient)
 
virtual void ShakeComplete ()
 Describes what happens when the shake is complete More...
 
virtual void OnEnable ()
 On enable we start shaking if needed More...
 
virtual void OnDestroy ()
 On destroy we stop listening for events More...
 
virtual void OnDisable ()
 On disable we complete our shake if it was in progress More...
 
virtual bool CheckEventAllowed (MMChannelData channelData, bool useRange=false, float range=0f, Vector3 eventOriginPosition=default(Vector3))
 Returns true if this shaker should listen to events, false otherwise More...
 

Protected Attributes

AudioReverbFilter _targetAudioReverbFilter
 the audio source to pilot More...
 
float _initialReverb
 
float _originalShakeDuration
 
bool _originalRelativeReverb
 
AnimationCurve _originalShakeReverb
 
float _originalRemapReverbZero
 
float _originalRemapReverbOne
 
- Protected Attributes inherited from MoreMountains.Feedbacks.MMShaker
float _shakeStartedTimestamp = -Single.MaxValue
 
float _remappedTimeSinceStart
 
bool _resetShakerValuesAfterShake
 
bool _resetTargetValuesAfterShake
 
float _journey
 

Detailed Description

Add this to an audio reverb filter to shake its values remapped along a curve

Member Function Documentation

◆ GrabInitialValues()

override void MoreMountains.Feedbacks.MMAudioFilterReverbShaker.GrabInitialValues ( )
protectedvirtual

Collects initial values on the target

Reimplemented from MoreMountains.Feedbacks.MMShaker.

◆ Initialization()

override void MoreMountains.Feedbacks.MMAudioFilterReverbShaker.Initialization ( )
protectedvirtual

On init we initialize our values

Reimplemented from MoreMountains.Feedbacks.MMShaker.

◆ OnMMAudioFilterReverbShakeEvent()

virtual void MoreMountains.Feedbacks.MMAudioFilterReverbShaker.OnMMAudioFilterReverbShakeEvent ( AnimationCurve  reverbCurve,
float  duration,
float  remapMin,
float  remapMax,
bool  relativeReverb = false,
float  feedbacksIntensity = 1.0f,
MMChannelData  channelData = null,
bool  resetShakerValuesAfterShake = true,
bool  resetTargetValuesAfterShake = true,
bool  forwardDirection = true,
TimescaleModes  timescaleMode = TimescaleModes.Scaled,
bool  stop = false,
bool  restore = false 
)
virtual

When we get the appropriate event, we trigger a shake

Parameters
reverbCurve
duration
amplitude
relativeReverb
feedbacksIntensity
channel

◆ Reset()

virtual void MoreMountains.Feedbacks.MMAudioFilterReverbShaker.Reset ( )
protectedvirtual

When that shaker gets added, we initialize its shake duration

◆ ResetShakerValues()

override void MoreMountains.Feedbacks.MMAudioFilterReverbShaker.ResetShakerValues ( )
protectedvirtual

Resets the shaker's values

Reimplemented from MoreMountains.Feedbacks.MMShaker.

◆ ResetTargetValues()

override void MoreMountains.Feedbacks.MMAudioFilterReverbShaker.ResetTargetValues ( )
protectedvirtual

Resets the target's values

Reimplemented from MoreMountains.Feedbacks.MMShaker.

◆ Shake()

override void MoreMountains.Feedbacks.MMAudioFilterReverbShaker.Shake ( )
protectedvirtual

Shakes values over time

Reimplemented from MoreMountains.Feedbacks.MMShaker.

◆ StartListening()

override void MoreMountains.Feedbacks.MMAudioFilterReverbShaker.StartListening ( )
virtual

Starts listening for events

Reimplemented from MoreMountains.Feedbacks.MMShaker.

◆ StopListening()

override void MoreMountains.Feedbacks.MMAudioFilterReverbShaker.StopListening ( )
virtual

Stops listening for events

Reimplemented from MoreMountains.Feedbacks.MMShaker.

Member Data Documentation

◆ _initialReverb

float MoreMountains.Feedbacks.MMAudioFilterReverbShaker._initialReverb
protected

◆ _originalRelativeReverb

bool MoreMountains.Feedbacks.MMAudioFilterReverbShaker._originalRelativeReverb
protected

◆ _originalRemapReverbOne

float MoreMountains.Feedbacks.MMAudioFilterReverbShaker._originalRemapReverbOne
protected

◆ _originalRemapReverbZero

float MoreMountains.Feedbacks.MMAudioFilterReverbShaker._originalRemapReverbZero
protected

◆ _originalShakeDuration

float MoreMountains.Feedbacks.MMAudioFilterReverbShaker._originalShakeDuration
protected

◆ _originalShakeReverb

AnimationCurve MoreMountains.Feedbacks.MMAudioFilterReverbShaker._originalShakeReverb
protected

◆ _targetAudioReverbFilter

AudioReverbFilter MoreMountains.Feedbacks.MMAudioFilterReverbShaker._targetAudioReverbFilter
protected

the audio source to pilot

◆ RelativeReverb

bool MoreMountains.Feedbacks.MMAudioFilterReverbShaker.RelativeReverb = false

whether or not to add to the initial value

◆ RemapReverbOne

float MoreMountains.Feedbacks.MMAudioFilterReverbShaker.RemapReverbOne = 2000f

the value to remap the curve's 1 to

◆ RemapReverbZero

float MoreMountains.Feedbacks.MMAudioFilterReverbShaker.RemapReverbZero = -10000f

the value to remap the curve's 0 to

◆ ShakeReverb

AnimationCurve MoreMountains.Feedbacks.MMAudioFilterReverbShaker.ShakeReverb = new AnimationCurve(new Keyframe(0, 0f), new Keyframe(0.5f, 1f), new Keyframe(1, 0f))

the curve used to animate the intensity value on


The documentation for this class was generated from the following file: