Поделиться через


Функция D3DXMatrixLookAtRH (D3DX10Math.h)

Примечание

Служебная библиотека D3DX10 устарела. Вместо этого рекомендуется использовать DirectXMath .

Создает правшнюю матрицу взгляда.

Синтаксис

D3DXMATRIX* D3DXMatrixLookAtRH(
  _Inout_       D3DXMATRIX  *pOut,
  _In_    const D3DXVECTOR3 *pEye,
  _In_    const D3DXVECTOR3 *pAt,
  _In_    const D3DXVECTOR3 *pUp
);

Параметры

pOut [in, out]

Тип: D3DXMATRIX*

Указатель на структуру D3DXMATRIX , которая является результатом операции.

pEye [in]

Тип: const D3DXVECTOR3*

Указатель на D3DXVECTOR3 , определяющий точку глаза. Это значение используется при переводе.

pAt [in]

Тип: const D3DXVECTOR3*

Указатель на структуру D3DXVECTOR3, определяющую целевой объект камеры.

PUp [in]

Тип: const D3DXVECTOR3*

Указатель на структуру D3DXVECTOR3, которая определяет текущий мир, обычно [0, 1, 0].

Возвращаемое значение

Тип: D3DXMATRIX*

Указатель на структуру D3DXMATRIX, которая является правой матрицей взгляда.

Комментарии

Возвращаемое значение для этой функции является тем же значением, которое возвращается в параметре pOut. Таким образом, функцию D3DXMatrixLookAtRH можно использовать в качестве параметра для другой функции.

Эта функция использует следующую формулу для вычисления возвращаемой матрицы.

zaxis = normal(Eye - At)
xaxis = normal(cross(Up, zaxis))
yaxis = cross(zaxis, xaxis)

 -xaxis.x           yaxis.x           -zaxis.x          0
 -xaxis.y           yaxis.y           -zaxis.y          0
 -xaxis.z           yaxis.z           -zaxis.z          0
dot(xaxis, eye)  -dot(yaxis, eye)  -dot(zaxis, eye)  1

Требования

Требование Значение
Заголовок
D3DX10Math.h
Библиотека
D3DX10.lib

См. также раздел

Математические функции