Хонич А.
Как самому создать трехмерную игру
стр. 258

дополнительную операцию маскирования внутри цикла вывода. Если же число сдвинуть влево на 9, то маскирование осуществляется автоматически (при переполнении в операции сложения). Хочу напомнить вам, что операции сдвига в 386 процессорах выполняется за 1 такт независимо от количества сдвигаемых разрядов. В функции AsmDrawWallHigh есть еще один метод.ускорения вывода: это вывод в одном цикле двух байт. Дело в том, что любые ветвления кода программ сильно тормозят работу из-за необходимости перезагрузки очереди команд (положительный шаг по оптимизации работы с очередью команд был впервые предпринят в процессоре INTEL Pentium).

Как вы понимаете, функции Asm DrawWallHigh и AsmDrawWallLow используются не только для вывода текстур “неба”, но и для изображения текстур для “стен”. Таким образом, стены рисуются также столбец за столбцом (вывод по вертикали)»

Функции ProjectCurColumnJorPlane.

А теперь рассмотрим, как осуществляется вывод “плоских” текстур для полов/потолков, имеющих фиксированный размер 64x64. В отличие от стенных текстур, “плоские” текстуры выводятся не по вертикали, а по горизонтали, т.е. строка за строкой. Однако, как мы видели выше (при рассмотрении фу нкции DrawPlanes), сканирование осуществляется по координате X, т.е. создается впечатление, что текстуры выводятся столбец за столбцом при увеличении координаты X. Дело в том, что не каждый вызов функции ProjectCurColumnforPlane сопровождается выводом на экран. Для вывода линии здесь требуются левая и правая границы (стены) линии. Поэтому' в промежутке от стены до стены просто заполняется таблица TabPosX Plane, которая представляет собой таблицу начальных значений X, необходимых для вывода прямой, в зависимости от теку щей координаты Y.

Исходный текст функции ProjectCurColumn forPlane:

Новости
Сценарист Uncharted рассказала о проблемах одиночных игр
Над игрой работала Эми Хенниг, сценарист серий Uncharted и Legacy of Kain.
Готовится выход дополнения «Апокалипсис» для Battlefield 1
Компания Electronic Arts, которая занимается изданием компьютерных игр, и студия-разработчик DICE готовят выход дополнения «Апокалипсис» для игрового проекта Battlefield 1. В дополненной версии появится пять новых карт.