Создание каньона
Начало.
Итак, давайте сразу определимся, какой именно каньон нас интересует.
Во-первых, там должны быть арки, сквозь них пролетать будем в нашем
кино, и вообще, скалы самых разных и причудливых форм. Стенки с
отрицательными углами наклона, поясню, отрицательным углом я называю, в
данном случае, острый угол между стеной и полом, тупой угол -
положительный. Тупоугольный ландшафт любой noise или displace на сетке
изобразит, если постараться с рисованием карты, то даже не плохо,
генераторы ландшафтов есть различные - внешние программы и встроенные
модули. А как быть с острыми углами, а тем более, арками?
Изолинии.
Безусловно, можно построить модель любой сложности просто по точкам и
треугольникам, но доложу я вам, это та еще развлекуха. Значит, нам
нужно как-то автоматизировать процесс, насколько это возможно. Но, по
порядку: Набросав в голове примерный планчик каньона, я, опять же
мысленно, построил семь срезов скал на разных высотах, от нуля до двух
сотен метров (крыша, выше только небо), и принялся методично
вычерчивать эти изолинии простыми shape. Вот отрывок из моих трудов:
Обратите внимание на то, как зарождалась арка - на нижних
изолиниях прорыв, на средней его нет, дальше опять, ну и т.д.
Специально с боку показываю:
Вот таким образом я получил весьма подробный "чертеж" будущего
каньона. Работа заняла примерно часик с перекурами. Главное в данном
моменте - усидчивость и кропотливость. Я сваял все тяп-ляп, но было
совсем не много времени. Сразу добавлю, что количество точек в каждой
изолинии произвольно и все точки corner, никаких Безье нам тут не
нужно.
Extrusion.
Следующий шаг - extrude каждой изолинии. Придаем им объем,
выращиваем известняковые плиты или может быть плиты песчаника? Каждая
плита должна немного влезать в другую, зазор небольшой, но очевидный. В
итоге получаем примерно такую картину (стрелкой помечена наша арочка,
их тут много, но эта прямо на виду):
Буль-буль, приплыли.
Далее предстоит легкий геморрой. Все плиты, пересекающиеся меж
собой, необходимо объединить булевским union. В третьей версии МАХа
Буль больной. Глючит безбожно, поэтому я произвел эту нехитрую операцию
с помощью Boolean 2 в 2.5 версии. Собственно, любые глюки можно,
стараясь, обойти. Попробуйте ребята, не стройте слишком сложные и
огромные плиты, разделите их на более мелкие куски. Экспериментируйте.
Так или иначе, мы получили объединенные скальные массивы. Теперь,
совершенно необходимо избавить нашу геометрию от лишних полигонов, тех
которые никогда не будут видны в кадре, внешние боковые фасетки, нижняя
плоскость уходящая в пол, все на фиг - безжалостно удаляется! Если у
кого-то остались вопросы, я думаю, что картинка на них ответит лучше
всего:
Теперь наша сцена готова к решающему рывку - MeshSmooth. Я надеюсь
что все, не соединяющиеся между собой массивы, у вас будут разделены,
как разные объекты. Это важно. К каждому объекту, поочередно, применяем
модификатор MeshSmooth со следующими значениями (советую поиграть
циферками и подобрать наиболее приемлемый для вас вариант):
После такой операции, количество полигонов в сцене выросло примерно
в 30-40 раз. А что делать? Нам нужна такая детальность, зато каньон
обрел форму, приличную форму:
Послесловие.
В следующий раз я расскажу, как немного оптимизировать эту геометрию,
разика в два уменьшить количество полигонов, а так же мы с вами сделаем
"пол" у нашего каньона и покрасим его а-ля настоящий: