Система построек в современных 3D-движках работает следующим образом:
- Объекты хранятся в виде точек трёхмерного мира (вершин). 1 Они связаны друг с другом определённым образом, так что компьютер знает, между какими точками проводить линии или какие точки образуют поверхность. 1
- Система визуализации мира определяет, где в мире находится камера, и какие секции/полигоны мира видны в поле зрения камеры. 1 Это можно осуществить разными способами, например, с помощью метода двоичного разделения пространства (BSP). 1
- Все полигоны, проходящие через тест отсечения лишней геометрии, передаются визуализатору полигонов. 1 Для каждого полигона визуализатор осуществляет трансформацию в соответствии с локальной математикой (то есть анимацией модели) и математикой мира (местоположения модели по отношению к камере). 1
- Полигоны исследуются на предмет наличия нелицевых полигонов (находящихся на невидимой стороне объекта). 1 Нелицевые полигоны отбрасываются. 1
- Оставшиеся полигоны освещаются в соответствии с действующими световыми источниками. 1
- Визуализатор смотрит на то, какие текстуры полигон использует, и удостоверяется, что API/видеокарта будет использовать те же текстуры для отображения. 1 Затем полигоны направляются на API рендеринга и затем на видеокарту. 1
Например, в игровом движке Unity 3D для реализации простой системы строительства можно выбрать объект для постройки и переместить его по плоскости мышкой, а кликом левой мыши расставить объекты в любом месте. 3