Давно не писал в блог, а дело все в том, что вот уже больше месяца я изучаю совершенно новую для меня науку — 3D моделирование. Началось все крайне просто, сидел я и лениво разбирался с nodejs. Спустя пару дней ковыряний выяснилось, что все секреты этой платформы я и так знаю, ибо не один год программирую под веб. Да, ангулар круто, но какой смысл изучать те-же самые вещи по два-три раза? Те-же самые подходы, паттерны, шаги.
В общем, решил освоить что-то кардинально новое. Python, Java, новомодные Go или Rust? Нахер! Хотелось совсем неизведанных далей и потому выбор пал на 3D моделирование. Разумеется любопытство и халява тоже сыграли свою роль. Я обнаружил, что популярный пакет для моделирования — Autodesk Maya раздается студентам бесплатно. К слову я давно уже не студент, но написал там адрес своего вуза и … получил лицензию на 3 года бесплатного использования этого продукта. На самом деле зря, ибо Maya я больше никогда не открою, но об этом ниже.
Давно не прикладывал к своим постам музыку, хотя раньше делал это. Вот вам в тему песня группы Канцлер Ги.
Первые шаги с Maya
Меня встретил навороченый интерфейс Maya, с кучей вкладок кнопок, элементов и прочего. Хотя… в этом плане претензий у меня нет, во первых сложными интерфейсами, сочетаниями клавиш и прочей ерундой меня не напугать, я кодер, видел вещи и по хуже, а во вторых тут большая часть элементов сгруппирована крайне логично. Поэтому Maya зашла мне на удивление легко, после просмотра двух или трех виде уроков я просто взял и начал делать первую модель. Решил сразу перейти к прекрасному, в смысле пола, сделав женскую голову. Получилась она, к слову, так себе, но… а чего вы собственно ожидали? Сложнейший проект, особенно для новичка.
Добавлю, что это был чистый моделлинг по портрету, без отсебятины. Поэтому выглядит… сносно, лучше чем то, что я наскульптил ниже. Моделлинг это вообще чисто механический процесс не требующий знаний анатомии и прочих вещей, ну а кодеру к механическому повторению не привыкать, после стольких прочитанных гайдов.
Не забывайте еще и то, что голова — это сложный объект. Он состоит не только лишь из своей формы, но и из зубов, ресниц, бровей, глаз(в которых есть радужка и зрачок) и волос. Каждый из этих элементов достоин целого отдельного поста, который я конечно-же писать не буду.
На каком-то этапе я ушел дальше в игродельство и выяснил, что такая модель как у меня в игровой движок экспортирована быть не может. Почему? Потому что полигонов крайне много(если выражаться цензурно).
И это в одной только голове! Да, да, я рукожоп, кто ж спорит, но большинство полигонов тут это волосы. К тому-же xgen, который я использовал для волос, оказался крайне глючным и вылетал у меня от раза к разу, однажды даже сломав к чертям файл проекта. Я бы может продолжил и дальше работу над этой заготовкой если бы одно НО!
Все это время Maya нещадно лагала и крайне сильно меня нервировала. Крашнуться на половине работы и откатить все изменения, предложив отослать цензурный багрепорт в Autodesk? Запросто! Сколько это сожрало моих нервов — не счесть. Поправишь шею или глаза и рраз, оно у тебя падает. Потом запускай все с начала… Мало того! Сам пакет стартует на моем пк за 3 минуты. Не знаю что он там грузит, тем более что конфигурация у меня не самая слабая и позволяет большинство игр запускать на высоких, а некоторые на ультрах даже. (Ryzen3 + 16 гигов оперативы + Rx560 4gb в качестве видеокарты) Конечно не самолет, но какого хрена он тормозит в рабочем приложении?!
В итоге такие вот «сюрпризы» мне совсем разонравилась и я решил посмотреть в сторону Blender, забросив проект головы. Искушало меня и то, что этот пакет весил всего 100 мегабайт, (20 в виде архива), а функционал, который он предлагал был даже больше, чем у Maya, в частности скульптинг и рисование текстур, из коробки!
Переход на Blender
Запустив приложение я понял, что: blender летает на моей системе, не лагает, не тормозит, отлично все сохраняет. Правда интерфейс выглядит очень странно, а назначения клавиш другие, но это не проблема. В целом работать оказалось даже проще! Лагов небыло, проблем небыло, зато видеоуроки были в огромном количестве на пресловутом youtube. Просмотрев некоторые из них я вывел для себя условный цикл разработки 3d модели персонажа.
Это:
- Скульптинг модели(высокополигональная оболочка)
- Ремеш модели(то есть создание низкополигональной оболочки)
- Добавление второстепенных объектов(зубы, ресницы, брови, волосы)
- Текстурирование
- Добавление арматуры и весов
- Анимация
- Экспорт в игровой движок
В итоге я просто сел, сделал заготовку и начал скульптить!
Процесс создания персонажа
По приведенному выше плану решил начать со скульптинга и … в общем нехило так обломался. Чтоб вы понимали, ниже я привожу все свои … «шидевры». Их было всего 10, к слову. последний меня устроил и я продолжил его развивать. Начал я, судя по датам на файлах, 15-го мая.
Первый блин(внимание! ШОК КОНТЕНТ):
Этот… ужас заставил меня начать изучать анатомию человека. Достаточно банально вбить в гугл картинки соответствующий запрос и посмотреть расположение мускулатуры на лице, положение губ, как лицо рисуется и прочие важные вещи. Лепится все это из простой сферы, если что.
Второй блин:
Пропущу несколько и сразу перейдем к пятому:
И к седьмому:
Вот девятый, сделан 24го числа
Каждый день я делал по 1 такой попытке. Если честно, до этого я даже не рисовал людей. Вообще не рисовал людей. Меня даже на уроках рисования (давно, в школе) не смогли заставить человека нормально нарисовать. Машинки всякие рисовал, оружие, пейзажи, да, но не людей. Поэтому понимания пропорций у меня небыло, а мозг был совершенно не натренирован и не приспособлен к такой работе. Я программист, а не художник и тем более не скульптор. Пришлось развивать зрительную память, пришлось смотреть на голых баб с чисто утилитарными целями познания их природы, так сказать. На этих картинках вы наглядно видите как человек может обучиться чему-то, если будет повторять от раза к разу. Оправдания уровня: «у меня нет таланта» не принимаются. Потому что я вообще рисовать не умел и тем более не умел скульптить. за 9 дней с нуля я развился до такого уровня. И вот окончательный проект сделанный на десятый день.
Конечно я мог и дальше продолжать развиваться в этом направлении, но я посчитал, что этого будет достаточно и решил перейти к следующим шагам. В данном случае к ремешу, добавлению скелета и прочим, см. выше. Конечно в скульптинге тоже надо совершенствоваться, но нельзя на нем застревать ибо предела у совершенства нет, а цель завершить проект — есть.
В итоге получилось весьма не плохо, особенно на первый раз, хотя я понял, что многие вещи делал не правильно, криво и глупо. Особенно волосы, конечно, до сих пор никак не могу нормально их сделать…
Я даже смог добавить сюда анимацию ходьбы! Больше того, я смог экспортировать все файлы персонажа, включая одежду, в игровой движок Cry Engine! Хотя это и было очень тяжело сделать…
Итог
Разумеется до профессионалов, рисующих обалденные модели мне еще очень далеко, но ничего, однажды разовьюсь. Мне понравилось моделировать и я, пожалуй, сделаю еще одну модель, на сей раз с учетом предыдущих ошибок, а значит — лучше.
К слову: у этой моей новой модели количество плоскостей, вместе с одеждой, волосами, зубами, ресницами и прочим, включая полное тело, ноги, руки, пусть и криво сделанные, составляет — 91 000. Могло быть и лучше, в идеале вообще надо дойти до 16-20 000, но…. всему свое время, я еще только учусь.
Прикладывать исходники не буду, потому как стыдно… там много ошибок, проблем и прочей ерунды. Чтобы это понять, достаточно просто посмотреть на шею и подмышки(и это вы еще ног не видели)….
Норм. Ебабельна особенно если ебарь Спрут
Скоро можно будет модели для варкрафта рисовать и продавать)
серьезно? норм инфа, на самом деле вполне, не зря значит изучаю!
со слов: внимание! ШОК КОНТЕНТ я просто выпал под стол, увидев голову. без обид, конечно, но первый блин вышел очень смешным, до слез))) а вообще, молодец, новые дебри освоил. последний варик хорош.
ну да, последний вариант более-менее терпим, но он мне на самом деле уже поднадоел, буду пилить нового персонажа. К тому-же очень интересно связать анимации mixamo с персонажем, чтобы ускорить разработку и не делать все с нуля, потому как много времени уходит очень. Поэтому на новом персонаже реализую перенос анимаций с mixamo.
Продолжай осваивать 3D моделирование. Есть куда расти.
3D моделирование не простое и увлекательное направление. Самое главное, что увлекло, а мастерство — дело приходящее.