다음을 통해 공유


XMVectorLerp 함수(directxmath.h)

두 벡터 간의 선형 보간을 수행합니다.

구문

XMVECTOR XM_CALLCONV XMVectorLerp(
  [in] FXMVECTOR V0,
  [in] FXMVECTOR V1,
  [in] float     t
) noexcept;

매개 변수

[in] V0

보간할 첫 번째 벡터입니다.

[in] V1

보간할 두 번째 벡터입니다.

[in] t

보간 제어 요소입니다.

반환 값

보간을 포함하는 벡터를 반환합니다.

설명

다음 의사 코드는 함수의 작업을 보여 줍니다.

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;

다음과 같이 선형 보간 대신 입방형 보간을 수행하는 데 이 함수를 사용하는 것은 매우 간단합니다.


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 );
}

플랫폼 요구 사항

Windows 8 Windows SDK를 사용하는 Microsoft Visual Studio 2010 또는 Microsoft Visual Studio 2012. Win32 데스크톱 앱, Windows 스토어 앱 및 Windows Phone 8개 앱에 지원됩니다.

요구 사항

요구 사항
대상 플랫폼 Windows
헤더 directxmath.h(DirectXMath.h 포함)

추가 정보

기하학적 벡터 함수

XMVectorLerpV