Данный тутор поможет вам разобраться в создании одних из самых сложных элементов из брашей
Начнем с самого простого
1. Поворот дороги.
Давайте сразу определимся - ширина дороги будет равна 512-ти юнитам. Имхо самый приемлемый вариант. Для радиуса поворота я выбрал значение 1024. Выбираем инструмент Block Tool - acrh.
Переходим на вид сверху Top (x/y) и рисуем квадрат 1024х1024 (по радиусу). Жмем Enter и перед нами появляется окно параметров арки.
Давайте разбираться
Wall width - толщина стенки арки.
Number of Sides (max 2048) - кол-во брашей, из которых будет состоять арка, чем выше это число, тем плавнее и реалистичнее будет смотреться арка. Но прежде чем забивать туда астрономические цифры вы должны прочесть Важное примечание: при создании арки программа просчитывает координаты вершин брашей с точностью до одного юнита, поэтому если вы создали маленькую область арки и указали в Number of Sides большое значение, то не удивляйтесь, что ваша арка получится кривой, бесформенной и т.д. А при скейлинге уже готовой арки, вершины могут меняться по координатам с точностью до тысячных долей юнита, но даже это не всегда спасает от кривизны и даже может вызвать ошибку компиляции, поэтому будьте аккуратней.
Arc (0-360)- угол арки
Start Angle - угол, с которого будет начинаться арка (против часовой стрелки). На форму арки не влияет, влияет лишь на расположение по отношению к мировым осям
Add Height - добавление высоты, например для создания винтовых лестниц. В этом поле указываем высоту одной ступеньки (обычно 8 ). В Number of Sides будем указывать количество ступенек.
Вернемся к нашей дороге
Нам нужен поворот 90 градусов, поэтому Arс ставим 90.
Wall Width - 256, «почему в 2 раза меньше фактической ширины?» - возможно спросите вы, - а вы посмотрите на превью: программа думает что вся область превью – это созданный нами квадрат 1024х1024, теперь мысленно разделите область Preview на 4 части
и увидите, что арка нам нужна шириной не 512, а 256, что мы и забиваем в поле Wall width, НО при нажатии на ОК эта арка растянется и заполнит всю созданную нами область 1024х1024, то есть площадь арки увеличивается в 4 раза и ширина дороги становится 512. За этот небольшой недочет разработчикам "респект".
Number of Sides - 8. Далее - ОК.
Красим арку в текстуру дороги со скейлом 1:1 (если текстура 512х512). Для того чтобы текстура легла как надо открываем Texture Application (Shift+A) выделям каждый фэйс по отдельности и указываем Rotation, руководствуясь схеме ниже.
Для каждого фэйса нужен свой угол. Это не идеальные значения, по идее, если сложить все углы должно получиться 360, а здесь 361,5, но это не портит нам картину. После того как все углы указаны и применены, выделяем все фэйсы и выравниваем по краю (кнопка R или L) или по центру (С).
Примечание: смотрите, чтобы при выравнивании текстур галочка treat as one была снята.
Есть еще один вариант создания поворота - дисплейсмент. Его я не буду подробно расписывать ( https://www.snarkpit.net/index.php?s=art ... rticle=146 ), а лишь расскажу принцип. Создается система арок такого вида (1):
И по ней рисуется дисплейсмент, то есть соединяются вертексы дисплейсмента с вертексами арок. Затем арки удаляются. Способ геморрный, зато смотрите результат (3) - текстура сама растягивается и ложится практически идеально.
ЗЫ: 2 – случай, который мы только что рассматривали.
2. Коридор с арочным потолком и плавными поворотами.
Тут я не буду отвлекаться на текстуры. Ширина коридора пускай будет равна 128, а толщина стен 16. Сделаем сначала прямую часть коридора.
Затем выбираем Block Tool - acrh, переходим на вид сверху и рисуем квадрат 160х160 (ширина коридора с учетом толщины стен), Параметры арки можете посмотреть на скрине.
Итак, у нас получилась вытянутая арка, сжимаем ее до размеров 160х80, жмем Ctrl+M и крутим ее как надо (действуйте по ситуации), ставим на место потолка и растягиваем по всей длине коридора. Ну вот, самая легкая часть готова.
Делаем плавный поворот. Для удобства копируем готовый коридор и ставим оба вот так
Чтобы создать наружный поворотный сектор стены надо вспомнить, как создавали дорогу. Выбираем Block Tool - acrh рисуем квадрат со сторонами равными ширине коридора + толщины стен. Создаем арку с параметрами:
Я выбрал значение Number of Sides - 8 (запомните этот момент, мы потом его еще вспомним) Обратите внимание, что арка занимает только ¼ часть от всей области превью, поэтому Wall width указываем значение в 2 раза меньше фактической толщины. ОК, сделали.
Делаем противоположную стену: копируем арку (только что созданную) уменьшаем ее до квадратика 16х16 и переносим ее на место. Обратите внимание на то, что при уменьшении арки уменьшается ее толщина. Хотя это и очевидно, я уже сталкивался с работами, в которых люди этого не учитывали и для создания поворота ж\д рельсов также копировали и уменьшали первую созданную рельсу (с внешней стороны поворота) и разумеется вторая получалась тоньше, потом спрашивают "а почему так?". В таких случаях надо отдельно создавать арки для внутренней и внешней частей. В нашем же случае этим можно пренебречь.
Так. Дальше самое интересное
Потолок.
Выбираем Block Tool - torus и рисуем квадрат 320х320 (позже поясню откуда эти цифры). Смотрим на параметры торуса.
Верхняя превьюха показывает форму поперечного сечение тора (Cross Section Preview), нижняя - вид сверху (Top View Preview). Вот тут я должен кое-что разъяснить, Внимание: если назначить Rotation Arc меньше 270-ти градусов, торус (как и в случае с аркой) будет занимать не всю область Top View Preview, при создании растянется и получит неправильную форму. Нам лишний геморрой с вертексами не нужен, поэтому можно указать угол (Rotation Arc) в диапазоне от 270 до 360 (удобнее выбирать значение, кратное 90), потом всегда можно обрезать. Поэтому мы и рисуем квадрат 320х320, чтобы получить в итоге круг (радиус тора=160).
Cross-Section Radius - радиус Поперечного сечения (не путайте с радиусом тора!) – будет равен 80-ти – это максимально возможное значение для данного случая. Подумайте сами, при радиусе тора 160, радиус сечения никак не может быть больше 80-ти. Если вы нажмете на Compute Max Radius, то он вам выдаст максимальный радиус сечения, рассчитанный из высоты нарисованного вами бокса R=h/2. Ранее я всегда говорил «рисуем квадрат», игнорируя третье измерение; при создании тора тоже не обязательно учитывать высоту, главное надо ввести нужное значение в Cross Section Radius и высота бокса потеряет свой приоритет.
Значение Rotation Sides мы выбираем, опираясь на тот момент, про который я говорил, что вы должны запомнить, указывая Number of Sides 8 в параметрах арки, когда делали поворот стены. Т.к. тогда была арка в 90 градусов, то здесь торус в 360, то есть в 4 раза больше, поэтому в Rotation Sides мы указываем значение тоже в 4 раза больше 8х4=32, если вы хотите указать Rotation Arc 270 (3х90), то в Rotation Sides указываем 8х3=24 (вот почему я говорил что удобнее выбирать значение угла кратное 90)
Должно получиться так (при Rotation Arc = 360):
Далее, используя Clipping Tool (Shift+X), отсекаем все лишнее…
Чтобы сделать поворот коридора больше радиусом, выбираем Block Tool – acrh (начинаем с создания стены) и рисуем большой квадрат со сторонами равными радиусу поворота стены. На этот раз мы создадим каждую стену отдельно (без копирования)
Не забываем указать толщину стены в 2 раза меньше чем на самом деле (если вы не понимаете для чего это надо делать, внимательно прочтите первую часть тутора про создание поворота дороги).
У нас получилась внешняя стена поворота; чтобы сделать внутреннюю, переключаем Snap on Grid на 16 (по толщине стены) и рисуем еще один квадрат поменьше, захватывающий внутреннюю стену. Параметры арки такие же.
В итоге у вас должно получиться:
Рисуем потолок. Выбираем Block Tool - torus и рисуем квадрат с учетом того что он превратится потом в круг (Rotation Arc = 360) то есть в 2 раза больше радиуса поворота 672х2=1344:
Опять же используем Clipping Tool для отрезания лишних частей и ставим крышу на место
Вспомните как мы делали повороты дорог. Таким же образом можно сделать пол в туннеле. Можно конечно сделать прямоугольный в виде блока - ваше дело.