Введение в программирование трехмерных игр с DX9


Высота ячейки (координата Y) для заданных координат местоположения камеры X и Z



Рисунок 13.10. Высота ячейки (координата Y) для заданных координат местоположения камеры X и Z



Рисунок 13.10. Высота ячейки (координата Y) для заданных координат местоположения камеры X и Z


Чтобы определить высоту мы должны узнать в каком треугольнике ячейки мы находимся. Вспомните, что каждая ячейка визуализируется как два треугольника. Чтобы определить в каком треугольнике мы находимся, мы берем тот квадрат сетки в котором находимся и перемещаем его таким образом, чтобы верхняя левая вершина совпадала с началом координат.

Поскольку переменные row и col определяют местоположение левой верхней вершины той ячейки где мы находимся, необходимо выполнить перемещение на –col по оси X и –row по оси Z. Преобразование координат X и Z выполняется так:

float dx = x - col; float dz = z - row;

Ячейка после выполнения преобразования показана на Рисунок 13.11.





- Начало -  - Назад -  - Вперед -