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


Функция XMMatrixPerspectiveFovRH (directxmath.h)

Строит правовинтовую матрицу перспективной проекции на основании поля зрения.

Синтаксис

XMMATRIX XM_CALLCONV XMMatrixPerspectiveFovRH(
  [in] float FovAngleY,
  [in] float AspectRatio,
  [in] float NearZ,
  [in] float FarZ
) noexcept;

Параметры

[in] FovAngleY

Угол зрения сверху вниз в радианах.

[in] AspectRatio

Пропорции области представления X:Y.

[in] NearZ

Расстояние до ближайшей плоскости отсечения. Должен быть больше нуля.

[in] FarZ

Расстояние до дальней плоскости обрезки. Должен быть больше нуля.

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

Возвращает матрицу проекции перспективы.

Комментарии

Для типичного использования Значение NearZ меньше , чем FarZ. Однако если вы перевернуле эти значения так, чтобы Значение FarZ было меньше , чем NearZ, результатом будет инвертирован буфер z (также известный как "обратный z-буфер"), который может обеспечить повышенную точность с плавающей запятой.

Значения NearZ и FarZ не могут совпадать и должны быть больше 0.

Ось AspectRatio по умолчанию является горизонтальной, но пересчет FovAngleY с помощью AspectRatio управляет направлением масштабирования представления: 2,0 * atan(tan(FovAngleY * 0,5) / AspectRatio).

Требования к платформе

Microsoft Visual Studio 2010 или Microsoft Visual Studio 2012 с windows SDK для Windows 8. Поддерживается для классических приложений Win32, приложений Магазина Windows и Windows Phone 8 приложений.

Требования

Требование Значение
Целевая платформа Windows
Header directxmath.h

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

Матричные функции библиотеки DirectXMath

XMMatrixPerspectiveFovLH