XMVector3TransformNormalStream function (directxmath.h)

Transforms a stream of 3D normal vectors by a given matrix.

Syntax

XMFLOAT3 *XM_CALLCONV XMVector3TransformNormalStream(
  [out] XMFLOAT3       *pOutputStream,
  [in]  size_t         OutputStride,
  [in]  const XMFLOAT3 *pInputStream,
  [in]  size_t         InputStride,
  [in]  size_t         VectorCount,
  [in]  FXMMATRIX      M
) noexcept;

Parameters

[out] pOutputStream

Address of the first XMFLOAT3 in the destination stream.

[in] OutputStride

Stride, in bytes, between vectors in the destination stream.

[in] pInputStream

Address of the first XMFLOAT3 in the stream to be transformed.

[in] InputStride

Stride, in bytes, between vectors in the input stream.

[in] VectorCount

Number of vectors to transform.

[in] M

Transformation matrix.

Return value

Returns the address of the first XMFLOAT3 in the destination stream.

Remarks

Each vector in the input stream must be normalized.

XMVector3TransformNormalStream performs transformations using the input matrix rows 0, 1, and 2 for rotation and scaling, and ignores row 3.

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

Requirement Value
Target Platform Windows
Header directxmath.h (include DirectXMath.h)

See also

DirectXMath Library 3D Vector Transformation Functions

XMVector3TransformNormal