1. Уважаемые гости и новички, приветствуем Вас на нашем форуме
    Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, сыграть в увлекательные ФРПГ, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!
    Скрыть объявление
  2. Форум аддона "Возвращение" 2.0:
    — Обсудить игру, почитать о прохождениях и/или разрешить свои вопросы по игре вы можете в одной из тем одноименного форума. Посетить...
    — Прочитать историю изменения и/или скачать последнюю версию аддона "Возвращение", вы можете на страницах наших ресурсов. Скачать...
    Скрыть объявление

Важно Создание территории: от простого к сложному

Тема в разделе "3D", создана пользователем blackmag, 4 июл 2013.

Статус темы:
Закрыта.
  1. blackmag

    blackmag Участник форума

    Регистрация:
    10 окт 2008
    Сообщения:
    7
    Благодарности:
    2
    Баллы:
    0
    В этом уроке будет основной способ моделирования 3 объекта (дом, город, локация), которые в свою очередь будут объединены. Также здесь будет рассмотрен основной интерфейс используемого нами модификатора Editable Poly. Этот урок в свою очередь будет делиться на 4 раздела. Минусом этого урока я бы назвал то, что здесь не буду рассматривать текстуринг, так как это уже совсем другой урок (постараюсь дать его отдельно). Теперь перейдем к самому уроку.


    1. Рассмотрим основные инструменты модификатора Editable Poly
    Quick Slice
    позволяет разрезать модель создавая при этом новые ребра;
    Constraints используется в работе с ребрами и гранями;
    Cut создает новые грани при нажатии мышки;
    Repeat last повтор команды;
    Hide unselected убирает отображение невыделенных на сцене объектов.

    Также есть другие команды при работе с одним из под объектов:
    Remove удаляет выделенное, объединяя при этом полигоны;
    Extrude выдавливание;
    Connect создает новые грани между выделенным;
    Remove unused map verts удаляет вершины не используемые при текстуринге;
    Detach отсоединяет грани и полигоны, создавая новый объект;
    Insert скос без смещения полигона;
    Flip создает противоположность выделенному;
    Extrude along spline выдавливание только вдоль выделенного сплайна;
    Hinge from edge поворот полигонов.


    2. Моделируем дом
    Наилучшей основой для создания того или иного объекта является ящик (box), цилиндр (cylinder) и труба (tube). В нашем случае это будет труба.

    1. Создаем tube с параметрами указанными ниже
    001.jpg 002.jpg

    2. Преобразуем данную модель: convert to > editable poly (можно и в editable mesh, но мне больше нравиться этот вариант). Далее выбираем подменю редактирования вершин (vertex). Выделяем и передвигаем вершины в том месте, где далее у нас будет дверь и пол.
    003.jpg 004.jpg

    3.Создав данную заготовку, переходим в подменю редактирования полигонов. Выбираем все полигоны (с 2-х сторон), относящиеся к двери и удаляем их. Так же поступаем с нижней частью нашей модели.
    Таким образом мы получили разрывы полигонов в месте где у нас будет дверь и пол.

    4. Теперь на виде сверху создадим плоскость в месте, где у нас будет пол. Далее выбираем объект «дом», в стеке модификатора editable poly нажимаем attach и щелкаем по созданной плоскости. Таким образом, у нас получилась одна модель. Далее нам надо сшить вершины плоскости с вершинами пола дома. Для этого переходим в меню редактирования вершин и щелкаем target weld. После чего поочередно соединяем вершины плоскости с вершинами пола (так же для уменьшения количества полигонов соединяем вершины пола до той степени пока не останется одна (на рисунке)).
    005.jpg >> 006.jpg

    Так же поступаем с разрывами в двери.

    5. Основа дома создана, не хватает только крыши. В данном случае я хочу обратить ваше внимание на инструмент выдавливания (extrude) и скоса (bevel). Создаем объект цилиндр, как показано на рисунке.
    007.jpg

    6. 008.jpg Переходим в меню редактирования вершин. Используя инструмент 009.jpg , выделяем и сжимаем верхние вершины.
    010.jpg Перейдем в меню редактирования полигонов. Выделяем верхний полигон, чередуя производим выдавливание и скос данного полигона.
    011.jpg

    7. Теперь дом готов полностью, осталось только объединить крышу и дом. Выбираем объект «дом» > нажимаем attach > щелкаем на объект «крыша».
    012.jpg

    8. Для дальнейшего текстуринга переходим в меню редактирования полигонов. Выделяем и назначаем ID: для стен (ID 1), для пола (ID 2), для потолка (ID 3), для крыши (ID 4). Наносим текстуры при помощи модификаторов UVW map и более сложного - Unwrap UVW. У меня получился вот такой домик.
    013.jpg


    3. Город
    Любой город имеет свои границы, поэтому, сначала взяв за основу объект, труба (tube), создадим ограждения (внешние стены). Чтобы облегчить создание города, будем использовать рисунок (вид сверху), который выставляется в под объектный уровень сцены. Так как у меня не было под рукой сканера, я рисовал его в обычном редакторе paint (в данном случае, я вам даю вид сверху уже готового города).

    Оставив слова, перейдем к самому уроку:
    1. Переходим в окно вида сверху, нажимаем Alt+B. Должно появиться меню, в разделе файлы ссылаемся на наш рисунок и нажимаем Ok.
    014.jpg

    2. Создаем объект труба (tube), и выставляем настройки, как указано на рисунке.

    3. Преобразуем объект в editable poly.
    015.jpg

    4. 008.jpg Включаем редактирование вершин (vertex). Выделяем и передвигаем вершины относительно заранее выставленного рисунка.
    016.jpg

    5. Далее выделяем и поднимаем вершины (в центре) до той высоты, какой будут проходы (в данном случае их будет 2).

    6. 017.jpg Переключаемся на редактирование границ. Выбираем инструмент Quick slice и разрезаем модель в тех местах, где у нас будет проход и ответвления от внешней стены (так же можно использовать инструмент Cut, но первый способ быстрее, хотя, и создает лишние границы).

    7. 010.jpg Переключаемся в режим редактирования полигонов. Выделяем полигоны, которые относятся к проходам, и удаляем их с 2-х сторон нажатием delete.
    018.jpg

    8. Как, наверное, Вы уже заметили, что кроме внешних стен будут присутствовать еще и внутренние. В начале создадим ответвления от внешней стены путем выделения и выдавливания (extrude) заранее подготовленных полигонов (п.6).
    019.jpg

    9. Создав ответвления, приступаем к созданию внутренних стен. Создаем объект ящик (box) (желательно все, что Вы создаете производить на виде сверху), и выставляем данные: высота=8м, толщина=1м, 1/1/1. Используя 020.jpg и 021.jpg настраиваем расположение нашего объекта на конце внутренней стены.
    10. Далее включаем редактирование полигонов. Выбираем крайний боковой полигон и производим несколько раз выдавливание (но желательно это периодически менять с 020.jpg и 021.jpg ). Заметим, что полученная стена является 2-м объектом на сцене, чего нам не надо. Поэтому выбираем объект «город», и на стеке модификатора в его настройках нажимаем attach, после чего щелкаем на внутреннюю стену. Теперь у нас только один объект на сцене. Таким образом, создаем и остальные стены.
    На заметку: не забывайте настраивать полигоны при выдавливании, в тех местах, где у нас будут ответвления от внутренних стен.
    022.jpg

    11. Теперь надо убрать созданные нами разрывы в проходах. Делаем это, так же как и при создании дома. Так же надо создать разрывы внизу каждой стены, поэтому выделяем полигоны снизу и удаляем их.

    12. Город создан, только не хватает домов, и того на чем это будет располагаться. Сначала создадим землю. В этом случае можно использовать несколько 2 метода, в зависимости от того, что мы хотим получить: ровную или холмистую поверхность. Первый метод: а) нужно просто создать плоскость; б) создать множество плоскостей, объединить с нашей моделью и сшить границы. При втором же методе создается плоскость, к которой применяется модификатор Noise.
    +: 1.а) используется наименьшее количество полигонов; 1.б) модель получается более качественно, т.к. не будет присутствовать разрывов полигонов.
    023.jpg

    -: 1.б) количество полигонов значительно возрастет; 2) для города совсем не нужны неровности.

    В данном уроке будем использовать способ 1.а. Итак, создаем плоскость 5 на 5 полигонов, размер подгоняем под город. Выбираем модель «город» > нажимаем attach > щелкаем на плоскость.

    13. На нашей плоскости осталось создать только дорожки.
    017.jpg Выбираем редактирование граней. Включаем инструмент Cut и производим разрезы, как показано на рисунке.
    024.jpg

    14. 010.jpg При текстуринге города будем брать за основу Multi-Sub-object.
    025.jpg

    Включаем редактирование полигонов. Теперь подготовим модель для дальнейшего нанесения текстур. Выделяем полигоны и назначаем ID: земля (ID 5),дорожки (ID 6),внешние стены (ID 7),верхушка стен (ID 8),внутренние стены (ID 9). Заметим, чтоID 1-4 использовались для дома.

    15. Осталось вставить объекты, которые Вы считаете нужными для города, в нашем случае это будут дома. Если Вы все создавали на одной сцене, то щелкните правой кнопкой мыши и выберите «отобразить все». Если же Вы создавали дом отдельно, то сохраните текущую сцену и загрузите сцену с домом. Выделите дом и экспортируйте его в формат 3ds. Загрузите сцену с городом и импортируйте дом. Производим расстановку домов используя 020.jpg и 021.jpg , а так же регулируя размеры с помощью 009.jpg . Чтобы дублировать объект зажимаем Shift и тянем данную модель.

    16. Осталось объединить все объекты сцены в один (как и раньше выбираем объект «город» > attach > щелкаем на дома).

    17. Город создан, осталось только нанести текстурки.
    026.jpg


    4. Способы создания территории
    В этом разделе мы рассмотрим как можно создать территорию используя тот или иной способ. Всего я приведу 5 примеров, итак приступим:

    1. Наиболее часто применяют модификатор Noise. Его основной функцией является создание холмистой местности. Для этого создаем плоскость со значительным количеством полигонов; применяем модификатор; ставим галочки рядом с fractal (по умолчанию значения стоят: roughness=0, iterations=6), выставляем значение strength по Z (зависит от взятого вами масштаба).
    027.jpg

    2. Используя первый способ, получается монотонная холмистая местность, поэтому лучшим способом является применение модификатора Displace. Его основной функцией является создание горной местности, но так же можно создавать и холмистую местность (указывая в настройках не большие высоты). Для этого заранее создаем материал (нажимаем М на клавиатуре) с картой (map) – Dent. В настройках указываем size=800, tiling по X, Y, Z=0,2. Создаем плоскость, применяем модификатор, и в его настройках, где просят указать map, ссылаемся на только что созданную карту (так же можно использовать готовый рисунок (bitmap)). Настраиваем высоту (strength). Таким образом, мы получили тот или иной ландшафт. Смысл заключается в том, что модификатор в зависимости от тона цвета поднимает или опускает участки территории (чем светлее, тем выше).
    028.jpg 029.jpg

    3. Этот способ, наверное, является самым простым и заключается в простом поднятии или опускании вершин (vertex). Для этого создаем плоскость, преобразуем ее в editable poly или editable mesh, переходим в режим редактирования вершин и творим.
    030.jpg

    4. Если Вы знаете Автокад, то создав там линейную заготовку, импортировавв 3d-max и применив в разделе объектов - terrain, получим красивую холмистую местность.
    031.jpg

    5. Если Вы хотите более качественного результата, то придется применить какой-нибудь из существующих плагинов (mountain, miner, 3d surf, terrine material).

    Вот мы и подошли к концу. Надеюсь, Вам понравился мой ну совсем не маленький урок и пригодится в будущем.
     
    MaGoth, Gor Na Drak, Defman и ещё 1 пользователь поблагодарили.
Статус темы:
Закрыта.

Поделиться этой страницей