Добрый день. Я занимаюсь web-разработкой и почти всем, что с этим связано.

Моделирование губки Менгера

Данный урок я написал давно, но он существует лишь в виде сообщения на форуме. Но, так как я обзавёлся собственным сайтом в N-й раз, настало время оформить его посолиднее. В нём я объясню, как соделировать губку Менгера. Губка Менгера — это простой фрактал, трёхмерная версия ковра Серпинского.

Допустим, у нас есть куб.

Губка Менгера

В режиме редактирования делаем в нём отверстия.

Ковёр Серпинского

Добавляем к нему три модификатора Array со значением Count, равному трём (сначала по Х, потом по Y, потом по Z).

Ковёр Серпинского

Применяем модификаторы

Ковёр Серпинского

Теперь выделите все полигоны и в T-панели выберите Remove doubles. Поверьте, неудалённые полигоны дадут о себе знать, если вовремя от них не избавиться. К примеру, на первой итерации у меня удалились 728 вершини, а осталось 1000.

Ковёр Серпинского

В режиме редактирования удаляем середину для трёх сторон. Рекомендую работать в режиме выделения полигонов, а не вершин. Соответственно, удалять тоже полигоны. На первой итерации у меня осталось 896 вершин.

Ковёр Серпинского

Теперь переходим обратно у пункту добавления модификаторов, пока у вас не зависнет компьютер.

Ковёр Серпинского

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

Комментарии