<!--
{
  "availability" : [
    "iOS: 26.0.0 -",
    "iPadOS: 26.0.0 -",
    "macCatalyst: 26.0.0 -",
    "macOS: 26.0.0 -",
    "tvOS: 27.1.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "MetalFX",
  "identifier" : "/documentation/MetalFX/MTLFXFrameInterpolatorBase/motionVectorScaleX",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "MetalFX"
    ],
    "preciseIdentifier" : "c:objc(pl)MTLFXFrameInterpolatorBase(py)motionVectorScaleX"
  },
  "title" : "motionVectorScaleX"
}
-->

# motionVectorScaleX

The horizontal scale factor the frame interpolator applies to the input motion texture.

```
var motionVectorScaleX: Float { get set }
```

## Discussion

The frame interpolator converts the horizontal component of each value in [`motionTexture`](/documentation/MetalFX/MTLFXFrameInterpolatorBase/motionTexture) into fragment (pixel)
coordinates by multiplying it by this property’s value.

If you set this property’s value to `1.0`, this interpolator expects that each pixel’s motion vector points
to the location where that pixel is in the [`prevColorTexture`](/documentation/MetalFX/MTLFXFrameInterpolatorBase/prevColorTexture). For example, in Metal’s standard device coordinates
where `(0,0)` represents the upper-left corner of the framebuffer, the motion vectors for an object that moves down
and to the right in the [`colorTexture`](/documentation/MetalFX/MTLFXFrameInterpolatorBase/colorTexture) by `10` pixels would be `(-10,-10)`.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)