Quick answer: Vcam → Add ExtensionCinemachineImpulseListener. Channel masks on source and listener must overlap. Set Raw Signal asset on the source.

Source GenerateImpulse() runs. Console fine. Camera doesn’t move. There’s no listener consuming the impulse.

The Symptom

Explosion plays, source fires, no shake. Or one vcam shakes (the one with a listener) but switching to another vcam loses the effect.

The Fix

Vcam GameObject:
  Add Extension → CinemachineImpulseListener
    Channel Mask:           1 (or All)
    Use 2D Distance:        false   // 3D scene
    Gain:                   1.0
    Reaction Settings:      Default Reaction profile

ImpulseSource (on explosion prefab):
  Default Channel:          1
  Raw Signal:               BumpyShake6dof.asset
  Default Velocity:         (1, 1, 1)
  Default Duration:         0.5s

Source channel 1, listener mask 1 — bits AND non-zero, listener consumes the impulse and shakes the vcam.

Multiple Vcams

Listener is per-vcam. Add to every vcam that should react to that channel. Or use a single global listener on the brain’s parent and let it apply to all.

Verifying

Trigger the impulse. Camera shakes. Disable the listener: shake stops while source still fires. Confirms wiring is correct.

“Source emits. Listener consumes. Channel masks align. Camera shakes.”

Related Issues

For Cinemachine StateDrivenCamera, see priority. For input composites, see composite.

Listener on vcam. Channels match. Shake.