2013-06-14 4 views
1

Я не могу понять, как создать процедурный мир. Я нашел статью о генерации местности вокселей, но это только видео или картинки, и я нашел некоторый рельеф местности, но я не могу этого понять. Я хочу пошаговое руководство по созданию простого объекта voxel. Я хочу создать ландшафт, но не куб.Unity3d Понять местность Вокселя

+0

Термин «_simple voxel object_» кажется несколько оксюмороном ;-) В серьезной ноте звучит так, будто вы не хотите объект воксела (если вы хотите создать ландшафт). Вы бы использовали воксели, если хотите моделировать кусок швейцарского сыра или туннели внутри Звезды Смерти. – jahroy

ответ

4

Существует два разных подхода к этому.

Voxel местность хранит твердую информацию - не только поверхность местности, но и весь объем. Прекрасным примером этого может быть Minecraft, где «рельеф» включает не только поверхность, но и пещеры и туннели. 3DCoat - это программа скульптур, которая использует вокселы, это хороший способ увидеть, что с ними можно и не может быть сделано. Возможность представлять любой 3D-объем - большое преимущество вокселей.

Традиционный поверхность Рельеф местности только поверхность: под ней нет ничего. Эта поверхность может быть многоугольной сеткой, но чаще всего это регулярные гуады (4-сторонние полигоны), которые процедурно генерируются из карты высот (которая представляет собой растровое изображение, которое хранит высоты вместо цветов). Полигональные ландшафты в основном представляют собой обычные 3D-модели, которые выглядят как ландшафт; с высотными картами можно работать легче, потому что их легче «ваять» быстро и могут быть модифицированы по процедуре для таких вещей, как взрывательные кратеры или эрозия. Хороший пример программы высот местности является Unity terrain editor или автономным инструментом, как Vue

В общем, вокселях гораздо дороже высоты или полигон местности - это 1 км от 1ой местности с разрешением 1 метр включает в себя 1 миллион битых данных ; 1 км на 1 км, воксель, высота которого составляет 1 км, составит 1 млрд. образцов (!). Это можно сократить с помощью умного enncoding (горячая тенденция здесь sparse voxel octrees), но по-прежнему много данных для управления. Это одна из причин, по которой Minecraft должен быть настолько блочным.

Вы можете генерировать либо вокселы, либо карты высот процедурно или вручную. Vterrain.org - отличный ресурс для различных техник, которые делают ландшафт.