Direct3D для VB.NET Урок 7. Добавляем матрицы преобразований
Продолжаем работать с новым форматом вершин. За этот урок мы добавим метод SetupMatrices.
Добавьте в класс вашей формы следующий код:
' Установка матрицы преобразования.PrivateSub SetupMatrices()
' Установка мировой матрицы.
device.Transform.World = Matrix.RotationY(0)
' Установка матрицы вида.
device.Transform.View = Matrix.LookAtLH( _
New Vector3(0.0F, 3.0F, -5.0F), _
New Vector3(0.0F, 0.0F, 0.0F), _
New Vector3(0.0F, 1.0F, 0.0F))
' Установка матрицы проекции.
device.Transform.Projection = Matrix.PerspectiveFovLH _
(CSng(Math.PI) / 4, 1.0F, 1.0F, 100.0F)
EndSub
Тут мы делаем преобразование с помощью трех матриц. Вкрадце их можно охарактеризовать так. Первая - мировая матрица (изменение координат объекта в мировых координатах). Вторая - матрица вида (то, как мы видим объект - из какой точки, в каком направлении и др.). И третья - матрица проекции (т. е. как мы проектируем наше трехмерное пространство на двумерный экран).
Далее в методе Render мы вызываем только что добавленный метод SetupMatrices: