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

Приложение

Как сделать, чтобы ваши программы работали быстрее

Здесь мы дадим вам несколько советов, которые помогут вам на первом этапе писать “быстрые” и эффективные программы на ассемблере и на “С/ СРР”. Некоторые из положений мы уже рассматривали, но я позволю себе повториться.

1.    Использование механизма предварительных вычислений.

По возможности, не занимайтесь сложными вычислениями внутри циклов и внутри функций, вызов которых осуществляется очень часто. Следуйте принцип)': никогда не откладывай на потом то, что можно сделать сейчас. Если внутри программы используются однотипные вычисления с одними и теми же параметрами, то эти вычисления лучше выполнить заранее, присвоив результаты каким-либо глобальным (или локальным) переменным.

2.    Использование табличных данных.

По возможности, результаты всех сложных длительных вычислений лучше свести в таблицы. Например, если вы пользуетесь тригонометрическими функциями (синусами или косинусами), то лучше всего, на начальном этапе, результаты этих функций свести в таблицу', назвав ее, например, sine или cosine. Результаты лучше хранить в формате с фиксированной точкой. Не рекомендую использовать формат с плавающей точкой, т. к это сильно затормозит обработку . Размер таблицы, в нашем случае, зависит от того, насколько плавно, например, необходимо вам поворачивать какой-либо объект, иными словами, от дискретности значений углов. Например, если дискретность углов у вас 1/2 градуса, то таблица будет состоять из 720 значений типа Fixed (360 * 2). Этот размер можно определить, как MAXDEGREES: #defme MAXDEGREES 720.

В этом случае, если необходимо определить сину с угла Ang, то это можно записать как

sine[Angle(Ang)];

где Angle можно определить как:

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