# Sandbox.CameraEffectSystem.BaseEffect

A transient camera effect, living in the [Sandbox.CameraEffectSystem](/api/Sandbox.CameraEffectSystem). Targets one
[Sandbox.CameraEffectSystem.BaseEffect.Camera](/api/Sandbox.CameraEffectSystem.BaseEffect/Camera), every camera (null), or radiates from an [Sandbox.CameraEffectSystem.BaseEffect.Epicenter](/api/Sandbox.CameraEffectSystem.BaseEffect/Epicenter) with
distance falloff. Derive to make your own effects.

- Kind: class
- Assembly: `Sandbox.Engine`
- Modifiers: abstract

## Properties

- [`Camera`](/api/Sandbox.CameraEffectSystem.BaseEffect/Camera): The camera this applies to - null applies to every camera.
- [`Duration`](/api/Sandbox.CameraEffectSystem.BaseEffect/Duration): Seconds the effect runs. Zero or less runs until [Sandbox.CameraEffectSystem.BaseEffect.Stop](/api/Sandbox.CameraEffectSystem.BaseEffect/Stop).
- [`Epicenter`](/api/Sandbox.CameraEffectSystem.BaseEffect/Epicenter): When set, the effect radiates from this world position - full strength at the epicenter, nothing beyond [Sandbox.CameraEffectSystem.BaseEffect.Radius](/api/Sandbox.CameraEffectSystem.BaseEffect/Radius).
- [`IsDone`](/api/Sandbox.CameraEffectSystem.BaseEffect/IsDone): True when the effect has expired or been stopped, and is about to be removed. An effect whose target camera has been destroyed is done too.
- [`IsInfinite`](/api/Sandbox.CameraEffectSystem.BaseEffect/IsInfinite): Runs until [Sandbox.CameraEffectSystem.BaseEffect.Stop](/api/Sandbox.CameraEffectSystem.BaseEffect/Stop) rather than expiring.
- [`Radius`](/api/Sandbox.CameraEffectSystem.BaseEffect/Radius): How far the effect reaches from [Sandbox.CameraEffectSystem.BaseEffect.Epicenter](/api/Sandbox.CameraEffectSystem.BaseEffect/Epicenter).
- [`TimeAlive`](/api/Sandbox.CameraEffectSystem.BaseEffect/TimeAlive): Seconds this effect has been running.

## Methods

- [`Evaluate`](/api/Sandbox.CameraEffectSystem.BaseEffect/Evaluate): Accumulate this effect's contribution. `position` is camera-local - [Vector3.Forward](/api/Vector3/Forward) pushes the view forward, [Vector3.Up](/api/Vector3/Up) up.
- [`ScaleFor`](/api/Sandbox.CameraEffectSystem.BaseEffect/ScaleFor): How strongly this effect applies to a camera - 0 when it targets a different camera, fading with distance from the [Sandbox.CameraEffectSystem.BaseEffect.Epicenter](/api/Sandbox.CameraEffectSystem.BaseEffect/Epicenter) when one is set. Override for custom falloff.
- [`Stop`](/api/Sandbox.CameraEffectSystem.BaseEffect/Stop): End the effect now.
- [`Update`](/api/Sandbox.CameraEffectSystem.BaseEffect/Update): Advance the effect - called once a frame by the system.
