This shaker will let you move the position of a transform, either once or permanently, shaking its position for the specified duration and within the specified range. You can apply that shake along a direction, randomized or not, with optional noise and attenuation
More...
|
virtual void | GrabInitialPosition () |
|
virtual void | OnMMPositionShakeEvent (float duration, float shakeSpeed, float shakeRange, Vector3 shakeMainDirection, bool randomizeDirection, Vector3 shakeAltDirection, bool randomizeDirectionOnPlay, bool randomizeDirectionX, bool randomizeDirectionY, bool randomizeDirectionZ, bool addDirectionalNoise, Vector3 directionalNoiseStrengthMin, Vector3 directionalNoiseStrengthMax, Vector3 randomnessSeed, bool randomizeSeedOnShake, bool useAttenuation, AnimationCurve attenuationCurve, bool useRange=false, float rangeDistance=0f, bool useRangeFalloff=false, AnimationCurve rangeFalloff=null, Vector2 remapRangeFalloff=default(Vector2), Vector3 rangePosition=default(Vector3), 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) |
|
override void | StartListening () |
| Starts listening for events More...
|
|
override void | StopListening () |
| Stops listening for events More...
|
|
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) |
|
|
Modes | Mode = Modes.Transform |
| whether this shaker should target Transforms or RectTransforms More...
|
|
Transform | TargetTransform |
| the transform to shake the position of. If left blank, this component will target the transform it's put on. More...
|
|
RectTransform | TargetRectTransform |
| the rect transform to shake the position of. If left blank, this component will target the transform it's put on. More...
|
|
float | ShakeSpeed = 20f |
| the speed at which the transform should shake More...
|
|
float | ShakeRange = 0.5f |
| the maximum distance from its initial position the transform will move to during the shake More...
|
|
float | OscillationOffset = 0f |
| an offset to apply to the oscillation More...
|
|
Vector3 | ShakeMainDirection = Vector3.up |
| the direction along which to shake the transform's position More...
|
|
bool | RandomizeDirection = false |
| if this is true, instead of using ShakeMainDirection as the direction of the shake, a random vector3 will be generated, randomized between ShakeMainDirection and ShakeAltDirection More...
|
|
Vector3 | ShakeAltDirection = Vector3.up |
| when in RandomizeDirection mode, a vector against which to randomize the main direction More...
|
|
bool | RandomizeDirectionOnPlay = false |
| if this is true, a new direction will be randomized every time a shake happens More...
|
|
bool | RandomizeDirectionX = true |
| whether or not to randomize the x value of the main direction More...
|
|
bool | RandomizeDirectionY = true |
| whether or not to randomize the y value of the main direction More...
|
|
bool | RandomizeDirectionZ = true |
| whether or not to randomize the z value of the main direction More...
|
|
bool | AddDirectionalNoise = true |
| whether or not to add noise to the main direction More...
|
|
Vector3 | DirectionalNoiseStrengthMin = new Vector3(0.25f, 0.25f, 0.25f) |
| when adding directional noise, noise strength will be randomized between this value and DirectionalNoiseStrengthMax More...
|
|
Vector3 | DirectionalNoiseStrengthMax = new Vector3(0.25f, 0.25f, 0.25f) |
| when adding directional noise, noise strength will be randomized between this value and DirectionalNoiseStrengthMin More...
|
|
Vector3 | RandomnessSeed |
| a unique seed you can use to get different outcomes when shaking more than one transform at once More...
|
|
bool | RandomizeSeedOnShake = true |
| whether or not to generate a unique seed automatically on every shake More...
|
|
bool | UseAttenuation = true |
| whether or not to use attenuation, which will impact the amplitude of the shake, along the defined curve More...
|
|
AnimationCurve | AttenuationCurve = new AnimationCurve(new Keyframe(0, 0), new Keyframe(0.5f, 1), new Keyframe(1, 0)) |
| the animation curve used to define attenuation, impacting the amplitude of the shake More...
|
|
bool | StartShakingButton |
|
virtual float | Randomness => RandomnessSeed.x + RandomnessSeed.y + RandomnessSeed.z |
|
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 |
|
|
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 | ShakeStarts () |
| Describes what happens when a shake starts More...
|
|
override void | Shake () |
| Override this method to implement shake over time More...
|
|
override void | ShakeComplete () |
| Describes what happens when the shake is complete More...
|
|
virtual void | ApplyNewPosition (Vector3 newPosition) |
|
virtual Vector3 | ComputeNewPosition () |
|
virtual float | ComputeAttenuation (float remappedTime) |
|
virtual Vector3 | ComputeNoise (float time) |
|
override void | ResetTargetValues () |
| Resets the target's values More...
|
|
override void | ResetShakerValues () |
| Resets the shaker's values More...
|
|
virtual void | Awake () |
| On Awake we grab our volume and profile More...
|
|
virtual void | SetShakeStartedTimestamp () |
| Logs the start timestamp for this shaker More...
|
|
virtual void | GrabInitialValues () |
| A method designed to collect initial values 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 | 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...
|
|
This shaker will let you move the position of a transform, either once or permanently, shaking its position for the specified duration and within the specified range. You can apply that shake along a direction, randomized or not, with optional noise and attenuation