TopDown Engine  v3.6
MoreMountains.FeedbacksForThirdParty.MMCameraZoom Class Reference

This class will allow you to trigger zooms on your camera by sending MMCameraZoomEvents from any other class More...

Inheritance diagram for MoreMountains.FeedbacksForThirdParty.MMCameraZoom:

Public Member Functions

virtual float GetTime ()
 
virtual float GetDeltaTime ()
 
virtual void Zoom (MMCameraZoomModes mode, float newFieldOfView, float transitionDuration, float duration, bool useUnscaledTime, bool relative=false, MMTweenType tweenType=null)
 A method that triggers the zoom, ideally only to be called via an event, but public for convenience More...
 
virtual void OnCameraZoomEvent (MMCameraZoomModes mode, float newFieldOfView, float transitionDuration, float duration, MMChannelData channelData, bool useUnscaledTime, bool stop=false, bool relative=false, bool restore=false, MMTweenType tweenType=null)
 When we get an MMCameraZoomEvent we call our zoom method More...
 

Public Attributes

MMChannelModes ChannelMode = MMChannelModes.Int
 
int Channel = 0
 the channel to listen to - has to match the one on the feedback More...
 
MMChannel MMChannelDefinition = null
 
MMTweenType ZoomTween = new MMTweenType( new AnimationCurve(new Keyframe(0f, 0f), new Keyframe(1f, 1f)))
 the animation curve to apply to the zoom transition More...
 
MMCameraZoomModes TestMode
 the mode to apply the zoom in when using the test button in the inspector More...
 
float TestFieldOfView = 30f
 the target field of view to apply the zoom in when using the test button in the inspector More...
 
float TestTransitionDuration = 0.1f
 the transition duration to apply the zoom in when using the test button in the inspector More...
 
float TestDuration = 0.05f
 the duration to apply the zoom in when using the test button in the inspector More...
 
bool TestZoomButton
 an inspector button to test the zoom in play mode More...
 

Protected Member Functions

virtual void Awake ()
 On Awake we grab our virtual camera More...
 
virtual void Update ()
 On Update if we're zooming we modify our field of view accordingly More...
 
virtual void TestZoom ()
 The method used by the test button to trigger a test zoom More...
 
virtual void OnEnable ()
 Starts listening for MMCameraZoomEvents More...
 
virtual void OnDisable ()
 Stops listening for MMCameraZoomEvents More...
 

Protected Attributes

Camera _camera
 
float _initialFieldOfView
 
MMCameraZoomModes _mode
 
bool _zooming = false
 
float _startFieldOfView
 
float _transitionDuration
 
float _duration
 
float _targetFieldOfView
 
int _direction = 1
 
float _reachedDestinationTimestamp
 
bool _destinationReached = false
 
float _elapsedTime = 0f
 
float _zoomStartedAt = 0f
 

Properties

virtual TimescaleModes TimescaleMode [get, set]
 

Detailed Description

This class will allow you to trigger zooms on your camera by sending MMCameraZoomEvents from any other class

Member Function Documentation

◆ Awake()

virtual void MoreMountains.FeedbacksForThirdParty.MMCameraZoom.Awake ( )
protectedvirtual

On Awake we grab our virtual camera

◆ GetDeltaTime()

virtual float MoreMountains.FeedbacksForThirdParty.MMCameraZoom.GetDeltaTime ( )
virtual

◆ GetTime()

virtual float MoreMountains.FeedbacksForThirdParty.MMCameraZoom.GetTime ( )
virtual

◆ OnCameraZoomEvent()

virtual void MoreMountains.FeedbacksForThirdParty.MMCameraZoom.OnCameraZoomEvent ( MMCameraZoomModes  mode,
float  newFieldOfView,
float  transitionDuration,
float  duration,
MMChannelData  channelData,
bool  useUnscaledTime,
bool  stop = false,
bool  relative = false,
bool  restore = false,
MMTweenType  tweenType = null 
)
virtual

When we get an MMCameraZoomEvent we call our zoom method

Parameters
zoomEvent

◆ OnDisable()

virtual void MoreMountains.FeedbacksForThirdParty.MMCameraZoom.OnDisable ( )
protectedvirtual

Stops listening for MMCameraZoomEvents

◆ OnEnable()

virtual void MoreMountains.FeedbacksForThirdParty.MMCameraZoom.OnEnable ( )
protectedvirtual

Starts listening for MMCameraZoomEvents

◆ TestZoom()

virtual void MoreMountains.FeedbacksForThirdParty.MMCameraZoom.TestZoom ( )
protectedvirtual

The method used by the test button to trigger a test zoom

◆ Update()

virtual void MoreMountains.FeedbacksForThirdParty.MMCameraZoom.Update ( )
protectedvirtual

On Update if we're zooming we modify our field of view accordingly

◆ Zoom()

virtual void MoreMountains.FeedbacksForThirdParty.MMCameraZoom.Zoom ( MMCameraZoomModes  mode,
float  newFieldOfView,
float  transitionDuration,
float  duration,
bool  useUnscaledTime,
bool  relative = false,
MMTweenType  tweenType = null 
)
virtual

A method that triggers the zoom, ideally only to be called via an event, but public for convenience

Parameters
mode
newFieldOfView
transitionDuration
duration

Member Data Documentation

◆ _camera

Camera MoreMountains.FeedbacksForThirdParty.MMCameraZoom._camera
protected

◆ _destinationReached

bool MoreMountains.FeedbacksForThirdParty.MMCameraZoom._destinationReached = false
protected

◆ _direction

int MoreMountains.FeedbacksForThirdParty.MMCameraZoom._direction = 1
protected

◆ _duration

float MoreMountains.FeedbacksForThirdParty.MMCameraZoom._duration
protected

◆ _elapsedTime

float MoreMountains.FeedbacksForThirdParty.MMCameraZoom._elapsedTime = 0f
protected

◆ _initialFieldOfView

float MoreMountains.FeedbacksForThirdParty.MMCameraZoom._initialFieldOfView
protected

◆ _mode

MMCameraZoomModes MoreMountains.FeedbacksForThirdParty.MMCameraZoom._mode
protected

◆ _reachedDestinationTimestamp

float MoreMountains.FeedbacksForThirdParty.MMCameraZoom._reachedDestinationTimestamp
protected

◆ _startFieldOfView

float MoreMountains.FeedbacksForThirdParty.MMCameraZoom._startFieldOfView
protected

◆ _targetFieldOfView

float MoreMountains.FeedbacksForThirdParty.MMCameraZoom._targetFieldOfView
protected

◆ _transitionDuration

float MoreMountains.FeedbacksForThirdParty.MMCameraZoom._transitionDuration
protected

◆ _zooming

bool MoreMountains.FeedbacksForThirdParty.MMCameraZoom._zooming = false
protected

◆ _zoomStartedAt

float MoreMountains.FeedbacksForThirdParty.MMCameraZoom._zoomStartedAt = 0f
protected

◆ Channel

int MoreMountains.FeedbacksForThirdParty.MMCameraZoom.Channel = 0

the channel to listen to - has to match the one on the feedback

◆ ChannelMode

MMChannelModes MoreMountains.FeedbacksForThirdParty.MMCameraZoom.ChannelMode = MMChannelModes.Int

whether to listen on a channel defined by an int or by a MMChannel scriptable object. Ints are simple to setup but can get messy and make it harder to remember what int corresponds to what. MMChannel scriptable objects require you to create them in advance, but come with a readable name and are more scalable

◆ MMChannelDefinition

MMChannel MoreMountains.FeedbacksForThirdParty.MMCameraZoom.MMChannelDefinition = null

the MMChannel definition asset to use to listen for events. The feedbacks targeting this shaker will have to reference that same MMChannel definition to receive events - to create a MMChannel, right click anywhere in your project (usually in a Data folder) and go MoreMountains > MMChannel, then name it with some unique name

◆ TestDuration

float MoreMountains.FeedbacksForThirdParty.MMCameraZoom.TestDuration = 0.05f

the duration to apply the zoom in when using the test button in the inspector

◆ TestFieldOfView

float MoreMountains.FeedbacksForThirdParty.MMCameraZoom.TestFieldOfView = 30f

the target field of view to apply the zoom in when using the test button in the inspector

◆ TestMode

MMCameraZoomModes MoreMountains.FeedbacksForThirdParty.MMCameraZoom.TestMode

the mode to apply the zoom in when using the test button in the inspector

◆ TestTransitionDuration

float MoreMountains.FeedbacksForThirdParty.MMCameraZoom.TestTransitionDuration = 0.1f

the transition duration to apply the zoom in when using the test button in the inspector

◆ TestZoomButton

bool MoreMountains.FeedbacksForThirdParty.MMCameraZoom.TestZoomButton

an inspector button to test the zoom in play mode

◆ ZoomTween

MMTweenType MoreMountains.FeedbacksForThirdParty.MMCameraZoom.ZoomTween = new MMTweenType( new AnimationCurve(new Keyframe(0f, 0f), new Keyframe(1f, 1f)))

the animation curve to apply to the zoom transition

Property Documentation

◆ TimescaleMode

virtual TimescaleModes MoreMountains.FeedbacksForThirdParty.MMCameraZoom.TimescaleMode
getset

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