TopDown Engine v4.5
Loading...
Searching...
No Matches
MoreMountains.Feedbacks.MMCameraFieldOfViewShaker Class Reference

Add this to a camera and it'll let you control its field of view over time, can be piloted by a MMFeedbackCameraFieldOfView. More...

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

Public Member Functions

virtual void OnMMCameraFieldOfViewShakeEvent (AnimationCurve distortionCurve, float duration, float remapMin, float remapMax, bool relativeDistortion=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.
override void StartListening ()
 Starts listening for events.
override void StopListening ()
 Stops listening for events.
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.
virtual void StartShaking ()
 Starts shaking the values.
virtual void Play ()
 Starts this shaker.
virtual void Stop ()
 Stops this shaker.
virtual float ComputeRangeIntensity (bool useRange, float rangeDistance, bool useRangeFalloff, AnimationCurve rangeFalloff, Vector2 remapRangeFalloff, Vector3 rangePosition)

Public Attributes

bool RelativeFieldOfView = false
 whether or not to add to the initial value
AnimationCurve ShakeFieldOfView = new AnimationCurve(new Keyframe(0, 0), new Keyframe(0.5f, 1), new Keyframe(1, 0))
 the curve used to animate the intensity value on
float RemapFieldOfViewZero = 60f
 the value to remap the curve's 0 to
float RemapFieldOfViewOne = 120f
 the value to remap the curve's 1 to
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
MMChannel MMChannelDefinition = null
float ShakeDuration = 0.2f
 the duration of the shake, in seconds
bool PlayOnAwake = false
 if this is true this shaker will play on awake
bool PermanentShake = false
 if this is true, the shaker will shake permanently as long as its game object is active
bool Interruptible = true
 if this is true, a new shake can happen while shaking
bool AlwaysResetTargetValuesAfterShake = false
 if this is true, this shaker will always reset target values, regardless of how it was called
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
float CooldownBetweenShakes = 0f
 a cooldown, in seconds, after a shake, during which no other shake can start
bool Shaking = false
 whether or not this shaker is shaking right now
bool ForwardDirection = true
TimescaleModes TimescaleMode = TimescaleModes.Scaled

Protected Member Functions

override void Initialization ()
 On init we initialize our values.
virtual void Reset ()
 When that shaker gets added, we initialize its shake duration.
override void Shake ()
 Shakes values over time.
override void GrabInitialValues ()
 Collects initial values on the target.
override void ResetTargetValues ()
 Resets the target's values.
override void ResetShakerValues ()
 Resets the shaker's values.
Protected Member Functions inherited from MoreMountains.Feedbacks.MMShaker
virtual void Awake ()
 On Awake we grab our volume and profile.
virtual void SetShakeStartedTimestamp ()
 Logs the start timestamp for this shaker.
virtual void ShakeStarts ()
 Describes what happens when a shake starts.
virtual void Update ()
 On Update, we shake our values if needed, or reset if our shake has ended.
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.
virtual Color ShakeGradient (Gradient gradient)
virtual void ShakeComplete ()
 Describes what happens when the shake is complete.
virtual void OnEnable ()
 On enable we start shaking if needed.
virtual void OnDestroy ()
 On destroy we stop listening for events.
virtual void OnDisable ()
 On disable we complete our shake if it was in progress.
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.

Protected Attributes

Camera _targetCamera
float _initialFieldOfView
float _originalShakeDuration
bool _originalRelativeFieldOfView
AnimationCurve _originalShakeFieldOfView
float _originalRemapFieldOfViewZero
float _originalRemapFieldOfViewOne
Protected Attributes inherited from MoreMountains.Feedbacks.MMShaker
float _shakeStartedTimestamp = -Single.MaxValue
float _shakeStartedTimestampUnscaled = -Single.MaxValue
float _remappedTimeSinceStart
bool _resetShakerValuesAfterShake
bool _resetTargetValuesAfterShake
float _journey

Additional Inherited Members

Properties inherited from MoreMountains.Feedbacks.MMShaker
virtual MMChannelData ChannelData [get]
virtual bool ListeningToEvents [get]
virtual bool InCooldown [get]
 Returns true if this shaker is currently in cooldown, false otherwise.

Detailed Description

Add this to a camera and it'll let you control its field of view over time, can be piloted by a MMFeedbackCameraFieldOfView.

Member Function Documentation

◆ GrabInitialValues()

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

Collects initial values on the target.

Reimplemented from MoreMountains.Feedbacks.MMShaker.

◆ Initialization()

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

On init we initialize our values.

Reimplemented from MoreMountains.Feedbacks.MMShaker.

◆ OnMMCameraFieldOfViewShakeEvent()

virtual void MoreMountains.Feedbacks.MMCameraFieldOfViewShaker.OnMMCameraFieldOfViewShakeEvent ( AnimationCurve distortionCurve,
float duration,
float remapMin,
float remapMax,
bool relativeDistortion = 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
distortionCurve
duration
amplitude
relativeDistortion
feedbacksIntensity
channel

◆ Reset()

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

When that shaker gets added, we initialize its shake duration.

◆ ResetShakerValues()

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

Resets the shaker's values.

Reimplemented from MoreMountains.Feedbacks.MMShaker.

◆ ResetTargetValues()

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

Resets the target's values.

Reimplemented from MoreMountains.Feedbacks.MMShaker.

◆ Shake()

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

Shakes values over time.

Reimplemented from MoreMountains.Feedbacks.MMShaker.

◆ StartListening()

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

Starts listening for events.

Reimplemented from MoreMountains.Feedbacks.MMShaker.

◆ StopListening()

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

Stops listening for events.

Reimplemented from MoreMountains.Feedbacks.MMShaker.

Member Data Documentation

◆ _initialFieldOfView

float MoreMountains.Feedbacks.MMCameraFieldOfViewShaker._initialFieldOfView
protected

◆ _originalRelativeFieldOfView

bool MoreMountains.Feedbacks.MMCameraFieldOfViewShaker._originalRelativeFieldOfView
protected

◆ _originalRemapFieldOfViewOne

float MoreMountains.Feedbacks.MMCameraFieldOfViewShaker._originalRemapFieldOfViewOne
protected

◆ _originalRemapFieldOfViewZero

float MoreMountains.Feedbacks.MMCameraFieldOfViewShaker._originalRemapFieldOfViewZero
protected

◆ _originalShakeDuration

float MoreMountains.Feedbacks.MMCameraFieldOfViewShaker._originalShakeDuration
protected

◆ _originalShakeFieldOfView

AnimationCurve MoreMountains.Feedbacks.MMCameraFieldOfViewShaker._originalShakeFieldOfView
protected

◆ _targetCamera

Camera MoreMountains.Feedbacks.MMCameraFieldOfViewShaker._targetCamera
protected

◆ RelativeFieldOfView

bool MoreMountains.Feedbacks.MMCameraFieldOfViewShaker.RelativeFieldOfView = false

whether or not to add to the initial value

◆ RemapFieldOfViewOne

float MoreMountains.Feedbacks.MMCameraFieldOfViewShaker.RemapFieldOfViewOne = 120f

the value to remap the curve's 1 to

◆ RemapFieldOfViewZero

float MoreMountains.Feedbacks.MMCameraFieldOfViewShaker.RemapFieldOfViewZero = 60f

the value to remap the curve's 0 to

◆ ShakeFieldOfView

AnimationCurve MoreMountains.Feedbacks.MMCameraFieldOfViewShaker.ShakeFieldOfView = new AnimationCurve(new Keyframe(0, 0), new Keyframe(0.5f, 1), new Keyframe(1, 0))

the curve used to animate the intensity value on


The documentation for this class was generated from the following file:
  • H:/Code/MoreMountains/topdownengine/Assets/TopDownEngine/ThirdParty/MoreMountains/MMFeedbacks/MMFeedbacks/Shakers/MMCameraFieldOfViewShaker.cs