# Sandbox.CameraEffectSystem.AddPunch

## Overload 1

```csharp
BaseEffect AddPunch(CameraComponent camera, Vector3 direction, float amplitude, float frequency = 1, float duration = 0.3, float fovAmplitude = 0)
```

A punch along a camera-local direction that oscillates and dies out - [Vector3.Up](/api/Vector3/Up)
bounces the view upward, `frequency` scales how often it oscillates before
it lapses.

### Parameters

- `camera` (`CameraComponent`)
- `direction` (`Vector3`)
- `amplitude` (`float`)
- `frequency` (`float`), default `1`
- `duration` (`float`), default `0.3`
- `fovAmplitude` (`float`), default `0`

### Returns

`BaseEffect`

## Overload 2

```csharp
BaseEffect AddPunch(CameraComponent camera, Angles angles, float frequency = 1, float duration = 0.3, float fovAmplitude = 0)
```

An angular punch - the view kicks to `angles` and bounces back,
`frequency` scaling how often it oscillates before it lapses. Melee swings,
landings, launches.

### Parameters

- `camera` (`CameraComponent`)
- `angles` (`Angles`)
- `frequency` (`float`), default `1`
- `duration` (`float`), default `0.3`
- `fovAmplitude` (`float`), default `0`

### Returns

`BaseEffect`

Declared in [Sandbox.CameraEffectSystem](/api/Sandbox.CameraEffectSystem).
Assembly: `Sandbox.Engine`.
