# ShotKey

> Talos 0.7 · Since 0.6

One keyframe of a shot.

## Signature

```ts
export interface ShotKey {
  /** Seconds from the start of the shot. The first key of a shot is at 0 whatever it says. */
  at: number
  /** Where the eye is. */
  position: Vec3
  /** What it looks at: a world point, or an entity id resolved on every sample. */
  target: Vec3 | string
  /** Vertical field of view in degrees. Absent, the previous key's, else the list's default. */
  fov?: number
  /** How the move into this key eases. Absent, the shot's `ease`. `hold` stays on the previous key and jumps at `at`. */
  ease?: ShotEase
}
```

Import: `import type { ShotKey } from "@argus/gameplay"`

## Members

| Member | Signature | Description |
|---|---|---|
| `at` | `at: number` | Seconds from the start of the shot. The first key of a shot is at 0 whatever it says. |
| `position` | `position: Vec3` | Where the eye is. |
| `target` | `target: Vec3 \| string` | What it looks at: a world point, or an entity id resolved on every sample. |
| `fov` | `fov?: number` | Vertical field of view in degrees. Absent, the previous key's, else the list's default. |
| `ease` | `ease?: ShotEase` | How the move into this key eases. Absent, the shot's `ease`. `hold` stays on the previous key and jumps at `at`. |
