Функция XMVector3ProjectStream (directxmath.h)
Проецирует поток трехмерных векторов из пространства объектов в пространство экрана.
Синтаксис
XMFLOAT3 *XM_CALLCONV XMVector3ProjectStream(
[out] XMFLOAT3 *pOutputStream,
[in] size_t OutputStride,
[in] const XMFLOAT3 *pInputStream,
[in] size_t InputStride,
[in] size_t VectorCount,
[in] float ViewportX,
[in] float ViewportY,
[in] float ViewportWidth,
[in] float ViewportHeight,
[in] float ViewportMinZ,
[in] float ViewportMaxZ,
[in] FXMMATRIX Projection,
[in] CXMMATRIX View,
[in] CXMMATRIX World
) noexcept;
Параметры
[out] pOutputStream
Адрес первого XMFLOAT3 в целевом потоке.
[in] OutputStride
Шаг в байтах между векторами в целевом потоке.
[in] pInputStream
Адрес первого XMFLOAT3 в преобразуемом потоке.
[in] InputStride
Шаг в байтах между векторами во входном потоке.
[in] VectorCount
Число векторов для преобразования.
[in] ViewportX
Пиксельная координата левого верхнего угла окна просмотра. Если вы не хотите выполнять отрисовку в подмножестве поверхности, для этого параметра можно задать значение 0.
[in] ViewportY
Пиксельная координата левого верхнего угла окна просмотра на поверхности целевого объекта отрисовки. Если вы не хотите выполнять отрисовку в подмножестве поверхности, для этого параметра можно задать значение 0.
[in] ViewportWidth
Размер ширины тома клипа в пикселях. Если вы не выполняете отрисовку только для подмножества поверхности, для этого параметра следует задать размер ширины поверхности целевого объекта отрисовки.
[in] ViewportHeight
Размер высоты тома клипа в пикселях. Если вы не выполняете отрисовку только для подмножества поверхности, для этого параметра следует задать размер высоты поверхности целевого объекта отрисовки.
[in] ViewportMinZ
Вместе с ViewportMaxZ— значение, описывающее диапазон значений глубины, в который должна быть отрисовывается сцена, минимальное и максимальное значения тома клипа. Большинство приложений устанавливают для этого значения значение 0,0f. Обрезка выполняется после применения матрицы проекции.
[in] ViewportMaxZ
Вместе с MinZ, значение, описывающее диапазон значений глубины, в который должна быть отрисовывается сцена, минимальное и максимальное значения тома клипа. Большинство приложений устанавливают для этого значения значение 1,0f. Обрезка выполняется после применения матрицы проекции.
[in] Projection
Матрица проекции.
[in] View
Матрица представления.
[in] World
Матрица мира.
Возвращаемое значение
Возвращает адрес первого XMFLOAT3 в целевом потоке.
Комментарии
Параметры ViewportX, ViewportY, ViewportWidth и ViewportHeight описывают положение и размеры окна просмотра на поверхности целевого объекта отрисовки. Как правило, приложения отображаются на всей целевой поверхности; При отрисовке на поверхности 640*480 эти параметры должны иметь значение 0, 0, 640 и 480 соответственно. ViewportMinZ и ViewportMaxZ обычно имеют значения 0,0f и 1,0f, но для достижения определенных результатов можно задать и другие значения.
Требования к платформе
Microsoft Visual Studio 2010 или Microsoft Visual Studio 2012 с windows SDK для Windows 8. Поддерживается для классических приложений Win32, приложений Магазина Windows и приложений Windows Phone 8.Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | directxmath.h (включая DirectXMath.h) |
См. также раздел
Функции преобразования трехмерных векторов библиотеки DirectXMath