# 4. Reduced Motion
Part of [[Accessibility]]. Prev: [[3. Subtitle Scale and Captions]]. Next: [[5. Remapping Recap and Settings Menu]].
## 4.1 No invented OS API
I did not find a documented **cross-platform OS reduced-motion** query in the Unity **6000.5** Scripting API. Do not invent `Application.reducedMotion` or similar. Ship an in-game **Reduced motion** toggle (default off, or on if you have a studio policy). If you later verify a platform-specific API, use it to *suggest* a default, still overridable in-game.
## 4.2 What the toggle should disable
| System | What to do |
|---|---|
| URP **Motion Blur** | Disable the Volume override or set intensity to 0 ([[Post-Processing]] / effect catalog). Official URP VR guidance already says to avoid Motion Blur (and Lens Distortion / Chromatic Aberration) for comfort. |
| **Cinemachine Impulse** / noise | Skip impulse sources; use a still camera or a much smaller gain ([[4.Impulse Noise and Extensions]], [[Combat Feel and Hit Feedback]]). |
| Camera bob / land punch | Skip the animation or zero the curve. |
| Fullscreen **flash** | Do not pulse [[5. Worked Example Fullscreen Flash]] (photosensitivity, not only vestibular motion). |
| Screen shake from scripts | Same hook as Impulse: one `IMotionPreferences.Reduced` that all juice reads. |
```csharp
using System;
using UnityEngine;
/// <summary>In-game reduced-motion flag. NOT compiled in Unity.</summary>
public sealed class MotionPreferences : MonoBehaviour
{
[SerializeField] bool reducedMotion;
public event Action<bool> Changed;
public bool ReducedMotion
{
get => reducedMotion;
set
{
if (reducedMotion == value) return;
reducedMotion = value;
Changed?.Invoke(reducedMotion);
}
}
}
```
Listeners (a Volume weight, an Impulse listener, `FlashPulse`) subscribe in `OnEnable`. Do not poll in `Update`.
## 4.3 Exercise
Turn the toggle on and fire a melee hit that normally shakes and flashes. The hit should still *resolve* (damage, animation, audio); only the motion/flash is gone. That is "keep them playing," not "strip the game."
## Sources
- Post-processing in URP for VR (comfort; avoid Motion Blur) - see the 6000.5 URP post-processing intro: https://docs.unity.com/en-us/engine/6000.5/manual/post-processing-and-full-screen-effects/urp/integration-with-post-processing
- [[4.Impulse Noise and Extensions]]