MotionBlurEffect class

Directional motion blur driven by camera velocity.

Wraps the world render in a saveLayer with a directional ui.ImageFilter.blur oriented along the camera's movement direction.

final blur = MotionBlurEffect(velocityFn: () => camera.velocity);
camera.effectManager.addEffect(blur);

The effect is permanent (never auto-removed). Call CameraEffectManager.removeEffect to stop it.

Inheritance

Constructors

MotionBlurEffect({required Offset velocityFn(), double minSpeed = 150.0, double maxBlurSigma = 6.0, double maxSpeed = 800.0})
Create a MotionBlurEffect.

Properties

hashCode int
The hash code for this object.
no setterinherited
isComplete bool
When true the CameraEffectManager removes this effect automatically.
no setteroverride
maxBlurSigma double
Maximum blur sigma (pixels) achieved at maxSpeed.
final
maxSpeed double
Speed that maps to maxBlurSigma.
final
minSpeed double
Minimum speed (world px/s) before any blur is applied.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
velocityFn Offset Function()
Returns the camera's current world-space velocity (pixels/s).
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
postRender(Canvas canvas, Size size) → void
Called after canvas.restore(), in reverse order of preRender calls.
override
preRender(Canvas canvas, Size size) → void
Called before the world canvas.save() + camera transform.
override
render(Canvas canvas, Size size) → void
Called after all post-process passes for pure screen-space overlays (e.g. fade-to-black, letterbox bars).
inherited
toString() String
A string representation of this object.
inherited
update(double dt) → void
Update internal state once per frame.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited