Class ScreenShakeChannel
Feedback channel that produces camera positional shake via a decaying jitter coroutine.
Handles ScreenShakeEffect. Resolves the camera to shake through
GetActiveCamera(), which already falls back to
UnityEngine.Camera.main when nothing else is registered/selected — call
SetActiveCameraOverride(object) to pin a custom rig instead of a plain
"MainCamera" tag. The offset is applied through a UnityCameraShakeApplier (added to
the camera automatically) so it survives a camera controller that sets the camera's position every
frame. Uses unscaled time so it survives a hit-stop. UI shake lives in its own channel
(UiScreenShakeChannel).
Inheritance
ScreenShakeChannel
Assembly: Serenity.UnityFeedback.Infrastructure.dll
Syntax
public class ScreenShakeChannel : IFeedbackChannel
Constructors
ScreenShakeChannel(IFeedbackRuntime, IGameCameraService)
Initializes a new ScreenShakeChannel.
Declaration
public ScreenShakeChannel(IFeedbackRuntime runtime, IGameCameraService gameCameraService)
Parameters
| Type |
Name |
Description |
| IFeedbackRuntime |
runtime |
Coroutine host used to run and cancel the shake decay routine.
|
| IGameCameraService |
gameCameraService |
Resolves the camera to shake (active-camera selection + override pin).
|
Properties
ChannelId
Declaration
public string ChannelId { get; }
Property Value
Methods
CanPlay(IFeedbackEffect)
Declaration
public bool CanPlay(IFeedbackEffect effect)
Parameters
Returns
Play(FeedbackTarget, IFeedbackEffect)
Declaration
public void Play(FeedbackTarget target, IFeedbackEffect effect)
Parameters
Stop(FeedbackTarget)
Declaration
public void Stop(FeedbackTarget target)
Parameters
StopAll()
Declaration
Implements