Как сделать 3д модель: Как сделать свою первую 3D-модель? / Хабр

способы создать модель. Часть 1 / Хабр

Пожалуй, каждый или почти каждый читатель играл в современные графонистые игры, смотрел мультики Пиксар или хотя бы кино от Марвел или ДС. Или любой другой крупной компании — сейчас сложно найти фильмы без графики. И за просмотром или игрой наверняка задавались вопросом — а как это сделано? А, может, даже фантазировали, а что бы Вы сделали, если бы вдруг освоили 3D-графику?

Автор сообщества Фанерозой, биотехнолог, Людмила Хигерович.

Сегодня эта графика кажется уж слишком дешевой и корявой. Однако в год выхода фильма немногие киноленты могли похвастаться даже этим (опустим историю с хоббитами — она скорее исключение, чем правило). Кадр из фильма «Газонокосильщик», 1992, режиссер Бретт Леонард.

Что ж, ещё лет 30 — 40 назад графоний могли себе позволить только очень богатые компании с очень мощными суперкомпьютерами, а на создание одного ассета (набора функциональных моделей) уходили годы.

Двадцать лет назад 3D программы стали доступны простым смертным, и рынок начали наполнять фильмы, наполненные оправданной или неоправданной 3D-графикой, а также игрушки, где юзеры могли побегать в виде низкополигонального человечка или даже монстра.


Осторожно! От этой малополигональной зарубы у некоторых читателей может случиться острый приступ ностальгии! «Готика» от Piranha bytes, 2001 год.

Сегодня не проходит и месяца, чтобы не была анонсирована какая-нибудь крутая (или не очень) игрушка с трассировкой лучей или киношка с полностью перерисованными фонами и героями. Скрины приводить не буду, т.к. Fair use работает через раз, а примеры вы и сами можете привести, даже побольше, чем я. Лучше скину картинку со своей любимой игрой из моего детства.

От полета в этой игре в облике дракона в начале двухтысячных захватывало дух! Сейчас графика сильно устарела, однако эффекты просвечивания все еще вызывают уважение. «Глаз Дракона» от издательства Акелла, 2002 год.

Софт для 3D-моделирования тоже не стоит на месте и развивается не только в сторону улучшения визуализации, но и в сторону friendly-функций — начиная с упрощения интерфейсов и функций и заканчивая оптимизацией производительности “под картошку”, что позволяет буквально каждому пользователю ПК подобрать себе софт по нуждам и возможностям. При желании можно и на телефон найти программу. Правда, функционал и качество большинства таких приложений оставляют желать лучшего.

Но при обилии программ в них легко запутаться. Не умаляет проблемы и избыток туториалов, хотя бы потому, что избыток этот иллюзорный.

  • Во-первых, туториалов на одни программы явно больше, чем на другие. Обучающих видео по 3ds max или Zbrush много разного качества и толка, причём сейчас их несложно найти практически на любом языке. Тогда как на менее популярные программы есть десяток туториалов на английском, да и те от разработчиков оригинального софта без особых пояснений.
  • Во-вторых, существует огромная пропасть между туториалами для “чайников” и “тех, кто что-то умеет или прошёл наш базовый курс/школу/читал/смотрел/пробовал” и так далее. При этом начинающие свой путь новички зачастую не любят открывать видео “для нубов”, но и во второй категории мало что могут понять, заваливая комментарии вопросами, а после ещё и обижаясь на автора туториала.
  • В-третьих, почти все туториалы ставят конкретную цель. Да, это хорошо, когда в туториале есть определённый пример и можно сравнить свой результат с результатом автора. Но в большинстве своём это повод для разочарования. Я ни в коем случае не против этого, даже наоборот, сама пропагандирую. Однако как быть с теми, кто даже не знает, с чего начать? Да и стоит ли?

Что ж, хочу сказать, что многие программы заточены под определённый тип или подход к моделированию. Конечно, существуют пакеты или даже самостоятельные программы “10 в одном”, как тот же 3Ds max или Blender. Однако узкоспециализированных программ достаточно много.
Отдельный повод для самобичевания — работы, подписанные как “Вот первое, что я сделал. Не судите строго.” Люди видят работы явно выше, чем их собственное представление о своих силах и думают “Я так точно не смогу.” Но на самом деле, за каждой такой работой стоят часы, сутки и месяцы подготовки, изучения основ программ или даже солидный опыт в моделировании или рисовании в других программах, порой даже оконченные курсы или художественные школы. В крайнем случае, десяток испорченных и поломанных болванок, которые никто, никогда не увидит.

Этот дракон — одна из моих первых работ! — подписал автор статьи, выкладывая рендер на одном из сайтов в далеком 2012. Да, это первая работа в конкретно том софте и конкретно теми инструментами, но до нее было знакомство с простейшими объектами в 3ds max, лепка в корявом пробном режиме MQO, ковыряние в разрезанных и сшитых примитивах и кучка брошенных на полпути недоделок в виде голов, хвостов, лиц и прочего)

Поэтому я решила познакомить Вас не с основами моделирования как таковыми, и не с программами для моделирования, хотя упоминать конкретные примеры буду, это неизбежно. Я познакомлю вас с подходами к моделированию и методами создания моделей вне зависимости от конечного результата. Да, это всё было просто огромное лирическое отступление. Но сейчас перейдём к делу.

!Предупреждение!



▍ Подходы и методы

Существует два основных подхода к моделированию — объектный, также называемый векторным, и полигональный. Векторная 3D-графика строится на фиксированных формах (поверхностях геометрических объектов), представляющих собой совокупность множества точек поверхности или только информации о габаритах объекта (длина-ширина-высота, диаметр, объём, точки пересечения и т.п.). В некоторых случаях такой подход выгоден, например, в промышленном моделировании. Но порой работать в таком ключе становится сложно. Наложить на такой объект текстуры, например, не представляется возможным — вместо этого используют шейдеры (shaders), эффекты, имитирующие вид и поверхность материалов.

Полигональное моделирование в самом просто его виде — создание полигонов через вершины:

Полигональное моделирование отличается тем, что поверхность объекта разбивается на точки — вершины (axis), соединяющие их “рёбра” и заполнение между ними — полигоны (polygons). Друг от друга полигоны ограничивают грани или рёбра (lines, ribs), соединяющие 2 вершины.

Совокупность вершин и полигонов называется мешем (mesh). Один цельный меш, не соединённый вершинами и полигонами с другим мешем, называется объект (object). На полигоны меша можно наложить текстуру, создав UV-map — карту наложения.

Полигоны можно разбивать (divide, subdivide), увеличивая детализацию и сглаживая грубые грани, можно сокращать (decimate) для экономии памяти компьютера, уменьшения нагрузки или упрощения работы.

В рамках этого подхода, модель в базовом своём виде состоит из меша и представляет собой объект или комплекс пересекающихся, или самостоятельных объектов, объединенных смыслом, функцией или единым финальным обликом.

Некоторые программы успешно совмещают векторное и полигональное моделирование или могут конвертировать (преобразовывать) один вид модели в другой, превращая облако точек поверхности в вершины или наоборот. К таким программам, например, относятся Autocad и Blender.

Кроме вышеназванных, существуют другие подходы, вроде математического программирования. Но на них мы останавливаться не будем — они слишком узкоспециализированы и используются в основном в визуализации формул и графиков.

Сразу скажем, что сосредоточим внимание на полигональном моделировании, так как оно более распространено, для работы с ним больше софта и оно куда более востребовано — полигональные модели используются в играх, мультфильмах, фильмах, для печати фигурок, артов и прочего. При этом моделировать даже в рамках полигонального подхода можно по-разному, причём получая очень близкий по виду конечный результат.

▍ Моделируем, как можем

Итак, начнём с самого простого по навыку, но одного из сложных технически — 3D-сканирование. Фактически, от человека тут мало что зависит, некоторые профессионалы даже не считают этот способ настоящим моделированием.

Суть его в том, что создаётся множество фотографий объекта или помещения на одном и том же расстоянии, но под разными углами. После этого специальная программа анализирует фотографии и создаёт облако точек, а затем — меши. Многие из них ещё и накладывают текстуру, сформированную из фотографий.

Правда, чтобы получить хорошее качество, нужна хорошая камера, желательно лазерный сканер, мощный компьютер и специальная программа. Впрочем, есть и бюджетные версии — некоторые программы для фотограмметрии вполне совместимы с современным телефоном, и могут быть использованы на домашнем компьютере. Но будьте готовы делать по 600 фотографий одной и той же детали с разных сторон и ждать 20 часов, пока ваша модель скомпилируется. И не забудьте про расстояние — все точки фотографирования должны быть равноудалены от объекта, иначе последний будет перекошен. Ну и для работы потребуется “допилить” модель — “починить” дыры в меше, отрезать куски ненужного фона, поправить UV и т.

д.

Отдельный метод на границе сканирования и объектного моделирования мы рассмотрим позднее. Скажем только, что с его помощью актёров из реальной жизни переносят в фильмы и игры.

Второй способ — “рисование” полигонов. Вы буквально берёте и рисуете грани, вершины и полигоны, подобно черчению, сбору мозаики или аппликации. Таким образом можно получить очень точный результат, особенно когда требуется сделать малополигональную модельку точно по концепту. В этом случае в некоторых программах можно разместить картинку с примером и “чертить” буквально на ней. Однако полную и подробную модельку таким способом не сделаешь. Другое дело — создание болванок для последующей лепки.

  • Плюсы: точность, простота.
  • Минусы: долго, мало полигонов.

Так выглядит немного урезанный процесс создания модели по полигонам. Это может пригодиться, например, когда есть четкий векторный рисунок или силуэт, который не требует большой детализации

Третий способ — примитивы. Собственно, обычно с него все и начинают, так как набор базовых фигур (primitives) есть в каждой программе. На рабочем поле размещают примитив или несколько примитивов, составляют из них композицию, деформируют, режут и сливают. Здесь же можно производить булевые операции (boolean operation). Возможно, вы уже слышали про это в рамках математики. Если нет, то выглядит это следующим образом: мы можем складывать и вычитать геометрию из одного объекта другим. Так, цилиндрами мы можем наделать отверстий в кубе, или сделать квадратное окно в сфере.

  • Плюсы: простота работы, булевые операции.
  • Минусы: низкая точность, грубые формы.

Объектное моделирование — идеальный вариант для создания антенн, машин, механизмом — словом, для разнообразных твердотельных и технических моделей (т.н. Hard surface). Впрочем, для органики, порой тоже приходится использовать нечто подобное — например, для создания глаз.

Когда-то на заре моделирования, этот и предыдущий — были единственными способами полигонального моделирования, и отнимали кучу времени для приведения в порядок. Но время шло, появлялись новые способы и средства визуализации.

Скульптурирование или лепка (sculpting). Откровенно говоря, самый любимый метод моделирования объектов у автора статьи. Суть его заключается в том, что из базовой формы (примитива) по принципу куска глины или пластилина лепится новая форма с помощью выдавливания и наращивания объёма. Крупные куски отсекаются, тонкими инструментами создаётся мелкая детализация — совсем как в реальном скульптурировании.

Быстрый скульпт базовой морды в Zbrush. На данный момент зебра — самый мощный и функциональный софт для скульптинга. Разумеется, аналоги есть, и они добавлены в каждую крупную программу для моделирования, однако полностью заменить и вытеснить зебру они пока не могут.

Есть также и пограничные методы, использующие сразу несколько технологий, например, скелетное моделирование или альфа-проекция. Однако это может оказаться весьма сложным для понимания, и возможно заслуживает более подробного анализа и представления, чем мы можем позволить себе здесь.

Скелетное моделирование присутствует в разных программах, и реализовано в каждой по-своему. Так, например, выглядит скелетное моделирование в ZBrush — мы создаем какие-то базовые формы (основу, скелет) из Зсфер (Zsphere), и обращиваем ее «кожей». «Мясистость» контролируется величиной костей и соединяющих их переходов. После создания кожи ее так же можно модифицировать, подобно тому, как модифицировали бы любой полигональный объект.

Всё это очень интересно, но как же определиться с применением? Что если я хочу, скажем, освоить только определённую технологию для вполне конкретной цели? Например, создавать исключительно персонажей для игр? Или наоборот, переносить на большие экраны свои или чужие фантазии? А, может, я прирождённый техник, и мечтаю печатать на 3D-принтере свои механизмы?

Что ж, придётся показать, на что способно 3D-моделирование на практике, заодно демонстрируя конкретные примеры и методы, так сказать, наглядно.

Однако это придётся отложить на следующий длиннопост, так как примеров масса, а этот текст, итак, раздулся. Поэтому, до новых Встреч!

Все картинки в посте, кроме скриншотов игр и кадра из фильма — авторские. Модели также созданы автором текста.

#DevStory: Как создавать 3D-модели на телефоне с помощью приложения in3D

Всем привет! Меня зовут Илья и я являюсь одним из разработчиков в команде in3D. С 2019 года мы развиваем технологию, которая позволяет создавать трёхмерные модели человека с помощью обычного смартфона. С тех пор мы сильно продвинулись вперед, а наши модели стали более естественными и реалистичными. Давайте вместе посмотрим на прогресс нашей команды и основные этапы усовершенствования применяемой нами методики 3D-моделирования.

Разработчики приложения для 3D-моделирования in3D рассказали, как добились фотореалистичности от своих аватаров

Спойлер для самых нетерпеливых: тут можно посмотреть как выглядит наше приложение и результат, а так же сравнение с некоторыми другими приложениями для сканирования:


Как сделать 3D-аватар

Сначала был взрыв

Самые первые эксперименты от основателя in3d (скачать) были сделаны на основе пары облаков точек, сделанных с помощью Kinect. Затем мы совмещали их и пытались симулировать пару кусков ткани — их движения, складки и т.д.

Сначала 3D-модель ткани выглядела вот так

Вот так выглядел первый зародыш виртуальной примерочной, в будущем сделанной нашей командой в несомненно лучшем качестве:

На следующем этапе 3D-модель стала выглядеть лучше

Было принято стратегическое решение — сделать продукт, который позволит каждому человеку сделать свою фотореалистичную 3D-модель. Так сказать, начало Metaverse.

Одна из основных проблем, с которой мы столкнулись в самом начале, была связана с качеством работы датчика глубины на телефоне. Он давал слишком много шума. Для создания хорошей модели нужно уметь соединять облака точек с разных кадров, убирать шум и оставлять максимально много деталей, что оказалось не так-то просто. Первые аватары не имели чёткой текстуры, и основная работа заключалась в создании правильной формы.

Сделать правильную форму объекта было довольно сложно

Правильная 3D-форма

Потом наши 3D-модели обрели нормальную форму

Нам удалось побороть шум и склеить много кадров во что-то похожее на тело человека. Затем началось большое количество итеративных улучшений, решений технологических проблем и создания расширяемой инфраструктуры для приложения. Так как наша технология действительно сложная, на всем протяжении обработки данных используются видеокарты, и часть команды сфокусировалась на ускорении, другая продолжала улучшать качество моделей.

В какой-то момент это дало свои плоды — мы начали очень хорошо и консистентно понимать все про форму человека из данных. Дело осталось за малым — убедить мир, что мы делаем это лучше всех на таких шумных данных.

Основной майлстоун в 2020 году это запуск приложения, нам удалось довести все до финального продукта, попасть в App Store и начать тестировать технологию на разных юзерах. Выходило все лучше и лучше, но все еще были разные случаи, когда алгоритм не справлялся и модель не собиралась. Мы набирались данных и опыта решения множества граничных случаев. Так же из основного — у нас выделился в отдельный этап процесс сканирования головы и визуальный результат сильно улучшился.

В этом же году начались первые реальные применения нашей технологии — аватары стали насколько точными (ошибка до 1 см), что стартап Unspun начал с помощью наших моделей снимать мерки людей для пошива джинсов, ведь началась пандемия — сложно приехать в офис в Калифорнии, особенно если ты не в Калифорнии.

Наши 3D-модели отлично чувствуют себя в играх

Так же мы старались найти другие интересные применения, экспорт в игры:

  • Second Life
  • VRChar
  • GTA V

Фотореалистичный аватар

Добиться от аватаров фотореалистичности было сложнее всего

У наших аватаров теперь есть отличная форма, сильно улучшенная за предыдущий год — с это формы можно снимать мерки тела, много работы проводилось над визуальным улучшением аватаров и их текстуры.

Основной вехой прогресса в 2021 году на данный момент стало создание виртуальной примерочной — как по мне, так это что-то вроде проекта, о котором сотни стартапов говорило, но ни у кого не получилось распространенного продукта. Сделали мы это вместе с командой digital дизайнеров Replicant.



Скачать in3D

Нам удалось реализовать автоматизированную примерку одежды на персональные аватары и оформить это в весьма приятный опыт для пользователя (тут я предлагаю взять и оценить самому).

App StoreРазработка приложений для iOSСмартфоны Apple

Как делать 3D модели | Профессиональные решения для 3D-сканирования

Метод №1: 3D-моделирование

  Промышленный дизайнер работает над прототипом нового продукта

Первый способ создания 3D-моделей — начать с нуля, используя специализированное программное обеспечение для 3D-моделирования. Этот метод широко используется профессионалами самых разных отраслей: инженерами, промышленными дизайнерами, архитекторами, художниками компьютерной графики и многими другими.

Ключевая точка

Если вам нужно спроектировать что-то совершенно новое, еще не созданное, 3D-моделирование — идеальный способ дать волю своему воображению и воплотить свои идеи в жизнь.

Чем хорош этот метод, так это тем, что он позволяет создавать то, чего еще не существует — что-то совершенно уникальное, например, новый компонент для автомобиля или фантастическое существо в видеоигре — или что-то, что уже существует, но недоступно для сканирования.

Например, если вам нужна модель всемирно известного здания, расположенного удаленно или далеко от вас, может быть гораздо проще и дешевле создать 3D-модель с нуля, используя справочные материалы, такие как фотографии и видео, а не ездить в это место и устраивать 3D-сканирование (что само по себе может быть проблемой, когда речь идет об исторических зданиях!). Или, если вам нужно спроектировать что-то совершенно новое, еще не созданное, 3D-моделирование — идеальный способ дать волю своему воображению и воплотить свои идеи в жизнь.

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

Параметрическое моделирование

Параметрическое 3D-моделирование или САПР (автоматизированное проектирование) — метод №1, используемый инженерами и дизайнерами для создания реалистичных компьютерных моделей будущих деталей и узлов. Почти каждый современный продукт, с которым мы ежедневно взаимодействуем, был создан с использованием 3D-моделирования CAD.

  Создание 3D-модели в программе САПР

С помощью этого метода дизайнер создает 3D-модель объекта, которая может иметь все те же параметры, что и реальный физический объект: материал, вес, размер, оптические параметры, физические параметры и т. д. Затем эти модели можно распечатать на 3D-принтере или обработать на станке с ЧПУ, а также использовать для запуска сложных симуляций. Например, вы можете создавать сборки из деталей, чтобы увидеть, как они сочетаются друг с другом, проверить, как они будут реагировать на приложенные к ним силы, отслеживать, как жидкости будут течь через них, оценить, как они будут изготовлены, с помощью моделирования и т. д.

Полигональное моделирование

Эта техника моделирования лежит в основе почти каждой видеоигры или научно-фантастического фильма, которые вы когда-либо смотрели или играли. Полигональная модель состоит из полигонов: плоских двумерных фигур, треугольников или четырехугольников, которые художник модифицирует для создания трехмерной сетки. В отличие от моделирования в САПР, этот метод больше основан на концепции, чем на измерениях. Анимационные студии и студии видеоигр используют полигональное моделирование для проектирования всего, от персонажей фильмов и игр до различных 3D-объектов, таких как оружие, доспехи, транспортные средства и целые виртуальные миры.

  Полигональная сетчатая модель автомобиля

Цифровая скульптура

Этот метод, также используемый 3D-художниками в играх и анимационных фильмах, лучше всего подходит для создания гиперреалистичных объектов с органическими и плавными формами. Он также используется для создания прототипов моделей для дизайна, эскизов и 3D-печати. Процесс очень похож на лепку из настоящих материалов, таких как глина или камень. Используя инструменты скульптинга, похожие на кисть, вы можете манипулировать полигональной сеткой объекта, толкая, вытягивая и скручивая различные части его геометрии или добавляя дополнительную геометрию для имитации органической структуры. Цифровая скульптура требует еще больших художественных навыков и более дотошна и требует больше времени, чем полигональное моделирование. Вот почему во многих случаях эти методы используются вместе: сначала объект моделируется, а затем отправляется 3D-скульптору для детализации, чтобы потом принять окончательную форму.

  Создание персонажа телешоу в программном обеспечении для цифровой скульптуры

Какой бы метод вы ни выбрали, важно выбрать правильное программное обеспечение для моделирования, которое будет иметь все необходимые инструменты, которые помогут вам создать 3D-модель.

Лучшее программное обеспечение для 3D-моделирования для начинающих

Если вы только начинаете и ищете лучшее программное обеспечение для 3D-моделирования, у нас есть для вас несколько отличных рекомендаций.

Прежде всего, попробуйте Blender. Помимо того, что он бесплатный, он содержит множество руководств, сильное сообщество и в целом является идеальным программным обеспечением для начинающих. Это программное обеспечение для компьютерной 3D-графики с открытым исходным кодом подходит для всего: от визуальных эффектов до печати 3D-моделей, от интерактивных приложений до видеоигр.

Для профессионалов и более продвинутых пользователей лучше всего подойдут программы со специальными функциями для каждого этапа постобработки. Взгляните на Autodesk Maya, более известную как Maya. Благодаря настраиваемому пользовательскому интерфейсу это программное обеспечение является фаворитом в индустрии видеоигр, а также для тех, кто занимается 3D-моделированием или 3D-анимацией. Вы сможете попробовать его в течение месяца, прежде чем принять какое-либо платное решение.

  3D-модель дракона в ZBrush

В качестве альтернативы попробуйте 3ds Max, который также поставляется с месячной пробной версией. Специализируясь на приложении для моделирования персонажей, анимации и гиперреалистичного рендеринга отсканированных объектов, это приложение отличается скоростью и простотой использования.

Если вы ищете программу для цифровой скульптуры, попробуйте ZBrush. ZBrush наиболее известен своей способностью работать с высокополигональными моделями с большим количеством полигонов, и он отлично работает в паре с Artec Studio. Аналогичные альтернативы включают 3D-Coat или Autodesk Mudbox.

Если вы ищете программное обеспечение для моделирования САПР, рассмотрите SOLIDWORKS, отраслевой стандарт программного обеспечения для проектирования механических систем. SOLIDWORKS используется инженерами и дизайнерами для моделирования деталей и сборок и включает в себя функции моделирования, а также инструменты для рисования и сборки. Другими программами САПР, которые следует рассмотреть, являются AutoCAD, Fusion 360 или Rhinoceros.

Эти параметры также являются стандартными для многих студий, и когда вы хотите создать 3D-модель, вы, вероятно, обнаружите, что работаете хотя бы с одним из этих имен.

Создание 3D-моделей для 3D-печати

От 3D-модели к 3D-принтеру с помощью этого видеоурока

Бесплатное программное обеспечение САПР можно использовать для создания 3D-моделей и преобразования их в формат STL для 3D-печати. С помощью компьютера 3D-принтер способен создавать реальные объекты из 3D-моделей CAD. 3D-модели могут быть созданы с помощью бесплатного программного обеспечения САПР.