Windows apps
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

XMVectorLerp method

Performs a linear interpolation between two vectors.

Syntax


XMVECTOR XMVectorLerp(
  [in] XMVECTOR V0,
  [in] XMVECTOR V1,
  [infloat    t
);

Parameters

V0 [in]

First vector to interpolate from.

V1 [in]

Second vector to interpolate from.

t [in]

Interpolation control factor.

Return value

Returns a vector containing the interpolation.

Remarks

The following pseudocode demonstrates the operation of the function:


XMVECTOR Result;

Result.x = V0.x + t * (V1.x - V0.x);
Result.y = V0.y + t * (V1.y - V0.y);
Result.z = V0.z + t * (V1.z - V0.z);
Result.w = V0.w + t * (V1.w - V0.w);

return Result;

Note it is fairly simple to use this function for doing a cubic interpolation instead of a linear interpolation as follows:



XMVECTOR SmoothStep( XMVECTOR V0, XMVECTOR V1, float t )
{
    t = (t > 1.0f) ? 1.0f : ((t < 0.0f) ? 0.0f : t);  // Clamp value to 0 to 1
    t = t*t*(3.f - 2.f*t);
    return XMVectorLerp( V0, V1, t );
}


Platform Requirements

Microsoft Visual Studio 2010 or Microsoft Visual Studio 2012 with the Windows SDK for Windows 8. Supported for Win32 desktop apps, Windows Store apps, and Windows Phone 8 apps.

Requirements

Namespace

Use DirectX.

Header

DirectXMath.h

See also

Geometric Vector Functions
XMVectorLerpV

 

 

Show:
© 2017 Microsoft