что такое хард сурфейс
Советы по Hard-Surface текстурированию и запеканию
В этой статье Victor Kam подробно расскажет нам о текстурировании hard-surface ассетов, инструментах для запекания, умных материалах и детализации.
Введение
Меня зовут Виктор Кам, я родился и вырос в Ванкувере, Канада. Большую часть своего детства я играл в Нинтендо, смотрел мультики и читал комиксы. В 90-ые я состоял в небольшой художественной группе, которая создавала ANSII-арт, который стал моим первым цифровым артом.
Впервые я познакомился с 3Д, когда мой отец показал мне Autocad (он работал инженером). Вскоре, я выбрал 3ds Max, как свой основной 3д пакет и он до сих таким и остаётся. Сейчас я работаю лидом над одним неанонсированным проектом в Blackbird Interactive.
Я уже 15-лет работаю в игровой индустрии, а также около 2-х лет я работал преподавателем. Некоторые заслуживающие внимания, проекты над которыми я работал: серия игр Need For Speed Underground, Sleeping Dogs и Homeworld: Deserts of Kharak. В дополнение ко всему этому, я также работал над несколькими портативными тайтлами для PSP и Nintendo DS, так что опыт у меня весьма разнообразный.
Что же касается личных проектов, то для них я сейчас использую Blender 2.8 и я хочу встроить его сильнее в мой привычный пайплайн. Мне кажется, что Blender даёт мне больше творческой свободы в плане моделирования. Когда я не занимаюсь моделированием, то я делаю наброски поз и заново изучаю основы.
Ещё одна проблема — это являются ли материалы концепции PBR. С рассветом отсканированных материалов и преднастроенных базовых материалов, PBR совместимые текстуры больше не являются проблемой, только если вы не работаете со стилизованной графикой. Лично я считаю, что для начала лучше всего использовать дефолтные значения и править их лишь тогда, когда вам необходимо достичь определённой цели.
Запекание
Существует множество решений для запекания текстур. Есть MightyBake, Knald, Substance, Marmoset Toolbag, все они платные. А есть бесплатные – Xnormal и Handplane Baker.
Из-за того, что все мои ассеты проходят через Substance Painter перед тем, как попасть в игровой движок, то я предпочитаю запекать карты внутри Substance Painter. Хотя лично мне Marmoset Toolbag кажется гораздо более простым и лёгким в плане получения достойного результата с минимумом лишних телодвижений.
До появления всех этих специализированных программ, художникам приходилось разбивать свои модели, чтобы убирать все перекрывающиеся артефакты. Сейчас эта проблема решена “match by name” запеканием в Substance Painter, тогда как в Marmoset это называется Baking Groups. Если их сравнивать, то лично мне “match by name” кажется немного более хлопотным в настройке, так как требует от вас давать каждой части уникальное название. Например, у меня был случай вовремя кранча – я не мог корректно запечь карты, потому что у меня была пропущена одна буква в имени. Тогда как в Marmoset, ты просто кидаешь все части, которые хочешь запечь в одну папку.
Если вы hard surface художник, то знаете какую головную боль доставляют перекошенные запечённые карты, но в Marmoset есть возможность, рисовать skewmaps, что позволяет их легко исправлять.
Если же у вас слишком много перекосов, то иногда я использую для их исправления технику от Nick Quackenbush – вы используете Substance Designer, запекаете усреднённую (averaged) и не усреднённую (non-averaged) карты нормалей, запускаете их через node preset, а затем смешиваете их на основе UV island. Результат не будет идеальным, но позволит вам гораздо быстрее их исправить.
Самое хорошее в Marmoset Toolbag, это то, что всё в нём визуально, а не просто набор значений с слайдерами. Вы можете видеть, как высоко или низко находится ваш вьюпорт, вы даже можете видеть cage, если правильно его настроите. Это очень сильно облегчает понимание, того, что происходит с вашими запечёнными картами и позволяет легко их исправлять. Суммируя всё это, если вы новичок в запекании карт нормалей, то я рекомендую вам использовать Marmoset Toolbag. Он отлично подходит, для изучения процесса запекания, так как всё в нём очень наглядно.
Подводя итог – если ваш пайплайн включает в себя Substance Painter для создания текстур, то перед тем как включить запечённые в другом ПО текстуры в Substance Painter, вам их придётся импортировать в него. Это может создать излишние проблемы, когда вы работаете в большой команде и у вас могут возникнуть проблемы с контролем источников. Это лишь добавит дополнительный уровень файлового менеджмента в ваш пайплайн, чего я всегда стараюсь избегать. По этой причине, я стараюсь делать как можно более идеальные запечённые карты нормалей внутри самого Substance Painter и использовать сторонние программы только в случае крайней нужды.
Умные Материалы используй по-умному.
Смарт материалы великолепны, но людям необходимо понимать, что они хороши не только для создания грязи или эффектов износа. Они также могут полезны как шаблоны, чтобы поддерживать цельность между ассетами в крупных проектах. Например, если вы работаете не деструктивным методом, посредством fill layer и масок, то вы можете сохранять смарт материалы с пустыми масками и использовать их как шаблон внутри вашей команды. Всё что художнику нужно будет сделать, когда он начнёт работать с ассетом, это установить смарт материал на свою модель и рисовать по маскам, совершенно не беспокоясь о сохранности текстуры. Для тех, кто работает в команде и использует файлы Photoshop, то я уверен что вы знакомы с проблемой “Layer 281”, когда только один человек во всей студии знает, что этот слой на самом деле делает.
Для тех, кто хочет заняться процедурным текстурированием всерьёз я бы порекомендовал, не только использовать смарт материалы, но и использовать дополнительные запечённые карты, для создания различных эффектов. Например, вы можете использовать карту толщины (Thickness map), чтобы создать эффект свечения от нагретых элементов, который очень круто подходит для внешних частей двигателей. А из-за того карта толщины, использует запечённую карту, то вы сможете сохранить её для использования в будущем.
Hard surface художники, любят штамповку, поэтому у меня всегда есть смарт материал с слоями высоты, который использует якорные точки, чтобы процедурно управлять значениями неровности, основанными на значениях высоты. Чтобы сохранить всё в не деструктивном стиле, не используйте якорную точку только на paint layers, вместо этого, поместите её поверх папки вашей группы слоев в качестве passthrough layer. Таким образом вы сможете передать информацию в папку, находящуюся выше по иерархии.
Я люблю добавлять много цвета в BaseColor. Это конечно не соответствует PBR стандарту, но мне нравится, как сильно это помогает улучшить цвет в моих персональных работах. Это очень похоже на запечённый свет в Substance Painter, но это более олдскульный метод – использовать запечённые карты с gradient ramp поверх. У вас могут получиться весьма необычные результаты с этим методом.
Одеваем ассеты
Перед тем как решить какие материалы мне нужны, я обычно смотрю свой ассет в чистых значениях как обрубовку. Вы можете сделать это в Photoshop или использовать flat materials в вашем 3Д редакторе. Каждое значение может иметь небольшой оттенок. Я также могу использовать их как value map для своих основных цветов, чтобы сделать всё немного более интересным.
Когда я работаю над штампованными деталями, то обычно стараюсь оставаться на краях границ и делать наиболее насыщенные штамповкой области точками интереса. В данном случае это будет область с антенной. Пока я прорабатываю её, я также размещаю декали, чтобы подчеркнуть высоту штамповки и само собой стараюсь сделать всё это подчинённым определённой логике. Верите вы или нет, но я многому научился из классов по созданию ювелирных украшений, особенно тому, что нужно вести глаз зрителя по украшению. У вас должны быть спокойные области, где не происходит ничего интересного, и области, насыщенные деталями, которые привлекают внимание и вызывают интерес. Вы даже можете намеренно сделать неожиданные поворот в своём дизайне, чтобы привлечь зрителя, я, к примеру выставил адронный коллайдер на этом корабле на его переднюю часть.
Когда дело касается царапин и эффектов износа, то я придерживаюсь правила «делай аккуратно». Это значит вдумчиво размещать эти эффекты, они должны быть аккуратны и не спорить с главным центром внимания. Чтобы понять эту концепцию, лучше всего изучать реальные материалы, вы сможете легко найти металлические детали с эффектом износа, если выгляните наружу. =)
Ассеты для Продакшана vs Персональных Работ
Настоящим испытанием может стать создание материалов крутого ассета для продакшана, который предполагается использовать в своём личном портфолио, потому что на художника всегда действуют ограничения платформы. Мы как художники, всегда хотим, чтобы наши материалы выглядели как можно более круто, но обычно нам мешают технологические ограничения и время. Первым шагом на пути создания крутого ассета является понимание того как он будет использоваться в игре? Как близко с ним будет взаимодействовать игрок? Когда вам известны ограничения, то внутри них уже можно начинать действовать. Как только вы их узнали, будьте дружелюбны к техническим художникам и старайтесь вырабатывать решения, которые пойдут на благо всей команды!
Приемы Hard Surface моделирования для Gamedev
В этой статье расскажем про четыре способа создания high poly моделей. В качестве эксперта выступит Ян Шамарин. Ян уже более 5 лет в индустрии. Работал 3D-моделлером в рекламном продакшне, позже перешел в GameDev – занимал позицию Lead 3D Artist в студии Hazmob. Сейчас работает фрилансером на геймдев проектах и преподает курс «Hard Surface. WeaponHard Surface. Weapon». Специализируется на создании Hard Surface моделей.
Прежде чем перейти к основной теме статьи, немного коснемся требований к игровым ассетам и важных аспектов качественной модели.
Hard Surface – это любые твердотелые объекты, которые зачастую имеют острые углы и не поддаются простой деформации. Такие модели выделяют в отдельную группу, а для их создания используют специальные пайплайны.
Также нужно проанализировать соотношение пропорций деталей, размеры фасок, ну и сам материал, из которого сделан прототип. Эти пункты помогают достичь нужного качества на всех этапах создания ассета.
Еще очень важный момент. Нужно максимально точно вычислить размер прототипа. Это очень важно. Есть много способов это сделать. К примеру, можно узнать размер одного конструктивного элемента и от него вычислить все пропорции модели.
Нечеткие грани и градиенты на модели слева, говорят о том, что визуальный шейдинг модели неисправен. Модель справа – это пример правильного шейдинга low poly-модели, с которой не будет никаких проблем.
Плохой шейдинг влияет не только на внешний вид, но и на дальнейшие технические работы с ней. Без качественного шейдинга не удастся правильно запечь карты нормалей, АО-карты, вспомогательные карты для процедурного текстурирования.
Если модель изначально сделана правильно, чтобы исправить шейдинг нужно всего лишь настроить группы сглаживания. Есть очень простой способ сделать это: на угол менее 60° нужно назначить soft edge, больше 60° – hard edge.
Добиться правильного шейдинга на high poly моделях в несколько раз сложнее, чем на low poly. Для этого требуются навыки и понимание построения топологии и в принципе работы с мешем.
На примере слева шейдинг немного нарушен. Можно увидеть подтяжку на голове дрона, а блик у основания крыла острый, и некрасивый. На примере справа блик плавный, все ровно, гладко и привлекательно.
С неправильным шейдингом вся некачественная информация запечется на карты детализаций, нормалей и на все вспомогательные карты. Это дойдет и до самого финала, а чтобы исправить ошибку придется вернуться почти на самый первый этап – high poly.
На каждом проекте свои требования к high poly модели. В целом, к сетке особых требований не предъявляют. Главное, чтобы модель была качественной на шейдинге.
На примере изображена одна и та же модель. Сверху триангулированная неравномерная сетка, которую вручную редактировать невозможно. Под ней – классическая равномерная квадратная сетка, любое редактирование которой не представляет особого труда. Как бы там ни было, обе эти сетки дают качественный шейдинг модели и возможность запечь ее на low poly.
Основное требование к low poly – не должно быть ничего лишнего. На примере сверху каждый треугольник обоснован. На примере снизу большое количество трисов и точек, которые ни на что не влияют. Их можно удалить, не навредив форме или силуэту модели.
Работая с low poly нужно помнить, что все игровые движки триангулируют четырехугольные полигоны – делят эджем на два треугольника. Вам может быть знакома ситуация, когда после экспорта low poly в движок, на визуально ровных плоскостях появляются изломы. Это происходит из-за того, что полигоны могут быть деформированы. Разбивая такие полигоны на трисы, нужно делить их вдоль оси деформации. Движок же не учитывает такие детали и ставит эджи в произвольном направлении. Чтобы избавиться от артефактов, нужно вручную фиксить подобные полигоны.
За время работы с hard surfase, Ян выделил для себя четыре основных способа создания high poly моделей: Классический SUBD, Cad-моделирование, Boolean to Dynamesh в ZBrush, Boolean to SUBD в любом полигональном редакторе (Maya, 3Ds Max, Blender и т.д.)
При нулевом дивайде модель несете в себе острые ребра, которые закреплены саппорт-лупами по периметру. Для сглаживания применяется смуз. Существует популярное правило: модель должна достичь нужной гладкости после применения двух сабдивов.
Модель создается из NURBS поверхностей. Метод позволяет легко добиться нужной плавности окружностей за счет использования кривых третьего, пятого порядка. В кино производстве 3D-артистам не разрешают использовать CAD, но в играх – это очень распространенный метод.
Болванка модели и объекты для булевых операций создаются в Maya. Булевые операции проводятся в ZBrush, при помощи инструмента Live Boolean. Для сглаживания фасок между сочленениями используется Dynamesh и Polish, после чего к модели применяется Decimate.
Ничего не нужно моделить из плейна, выстраивая формы классическим методом. Болванка строится из примитивов, совмещенных при помощи булевых операций. Чтобы придать модели окончательный вид, форма вычитается плоскостями относительно референсов. Булевые операции проводятся в Maya или в другом полигональном редакторе.
Метод применим в случаях, когда нельзя использовать ZBrush, или если вам неудобно работать с буланом и децимейтами в ZBrush.
Эти градинеты не на изображении, а на шейдинге цилиндра. Если нужно закинуть Boolean из Maya в ZBrush и сдинамешить, вам придется подумать, как сделать так, чтобы после смуса этих градиентов не было. Возможно триангулировать только проблемную часть. Возможно, пофиксить градиенты методом полиша в ZBrush. Может быть, замаскировать грани, а остальное еще раз прополишить, чтобы убрать проблемы на шейдинге. Возможно, их даже не будет видно.
В этой статье мы затронули только основные достоинства и недостатки четырех методов создания high poly моделей hard surface ассетов. Надеемся, эта информация поможет вам сделать выбор в пользу наиболее подходящего для вас метода.
Если же вы чувствуете, что вам не хватает скиллов и общего понимания темы, то курс «Hard Surface. Weapon» с Яном Шамариным в качестве ментора, поможет вам восполнить пробелы в знаниях и научит применять их в реальных проектах.
Статья подготовлена для портала 3DPAPA на основе доклада Яна Шамарина на конференции Games Gathering Odessa 2021.
CAD моделирование
Достоинство метода.
Простота и скорость в создании сложных форм.
как раз недавно читал про создание твердотелки в таких пакетах на 80lvl )
После работ Alex Senechal заинтересовался CADом, Fusion 360 творит чудеса. Кстати изначально пушки для CP2077 тоже делали в Fusion, но вроде бы отказались как раз из-за сложности перегона в лоуполи.
Тоже после Алекса захотел освоить фьюжн. в третий раз. И снова не осилил и продолжаю сидеть на блендере/зебре))
Из последнего что я там сделал, граната из Киберпанка на основе концепта, адаптированная под 3d печать. Очень удобно работать в этом плане, так как можно сразу прикинуть как будет слайсить принтер, да и за размерами проще следить чем в других редакторах.
Круто вышло, и похоже) Я когда берусь изучать CAD, то возникает чувство, будто я впервые начинаю учить моделирование в принципе) Как-то больно) Пробовал ещё Moi, думал зайдёт лучше, но нет. Мне даже легче моделить твердотелку в софте для скульптинга)
Сейчас с максовским авто ретопом проблем быть не должно вообще. Несколько сек и готова правильная топология из CAD модели. Остается её только вручную почистить, поудалять лишние лупы.
Хорошая статья. Хотелось бы немного дать советов от себя, новичкам будет полезно.
Для тех, кто только собирается изучать, на базовом уровне желательно знать лайв булеан пайплайн и пайплайн через fusion, так как это самые распространённые воркфлоу в геймдеве. В некоторых студиях есть требование использовать определенный пайплайн, а в некоторых на выбор артиста. В последнем случае, на этапе блокаута ты изучаешь рефчики/ форму аттача или пушки и принимаешь для себя решение, где ты сможешь более быстро и точно повторить нужную форму. Как-то так, удачи в изучении 😉
P.S. Не забывайте хорошо полишить фаски в браше, иначе они плохо запекутся на нормалке и модель будет острая.
P.P.S. НИКОГДА не делайте микрофаски во фьюжене, оставьте это зебре ))
еще модель с микрофасками криво переносится, на углах образуются дырки с любыми настройками
Внимание к деталям которые никто не увидит 🙂
Особенности hard-surface моделирования
Александр Галевский, преподаватель курса 3D-скульптинга в ZBrush. Art lead в компании IGG. До этого 3 года проработал в Wargaming.
Расскажите о себе. Как давно в индустрии? С чего начинали?
Свой путь в 3D я начал с рекламы для самолетов. Это было, если я не ошибаюсь, в 2009 году. Я учился в ХАИ и там же нашел заказ. В то время я уже работал для себя в 3Ds Max, а тут меня попросили сделать что-то интересное. Людям нужна была реклама самолетов для печати в журнале. C этого все началось.
Спустя пару лет, я переключился на архитектурную визуализацию. Это была студия Cube — первая большая компания в Харькове. Она занималась, собственно говоря, архитектурой. Там я проработал 2 года, а потом перешел в гейм индустрию. В компанию, которая занималась hidden object.
Там спектр обязанностей был намного шире. Это были все ассеты, с нуля и до конца. Мне давали скетч и я выстраивал по нему геометрию, low poly, high poly, текстуры, рендер. В этой компании я проработал около 2 лет и научился большому количеству инструментов для визуализации. Потом меня позвали в Wargaming в Минск.
С этого начинается мой более профессиональный путь. Пришел я туда на должность middle artist, а когда через три года увольнялся, был уже senior artist. Там я делал танки. Мне давали чертеж и я строил геометрию, опять же, low poly, high poly, запекание, текстуринг. Полный цикл до интеграции непосредственно в движок.
В Wargaming школа текстурирования на очень высоком уровне. Из всех компаний с которыми я сотрудничал, там самые высокие требования к текстурам. Очень много проверок. В том числе, проверки на историческую достоверность и качество текстур — не дай бог днище танка будет не так затекстурированно.
И насколько это возможно?
Скажем так, с ограничениями. Я и еще пара ребят — тоже серьезных 3d-шников — мы добились определенных результатов в этом плане. Я скажу, что по качеству танков и карт наша игра не уступает World of Tanks Blitz.
В каких проектах еще принимали участие?
Расскажите о своем пайплайне.
Я думаю, мой порядок действий вряд ли отличается от стандартного в мире. Если мы говорим про скетчинг или концептинг, где нет чертежа, сначала я делаю blockout. Быстрое построение модели самыми простыми формами. Просто, чтобы понимать как она выглядит в 3d. Потом я дорабатываю модель так, чтобы она смотрелась привлекательно, чтоб был какой-то силуэт и расположение основных элементов.
После этого я начинаю делать high poly модель. Болванку в 3Ds Max, а доведение, если мы говорим про технику: всякие фактуры, сколы, сварочные швы, штамповка — любые несовершенства поверхности, — это все в ZBrush.
После того как high poly модель готова, на ее базе я начинаю делать low poly. Тут все зависит от требований конкретной игры или компании. В каждой компании свои требования по полигонажу танков или другой техники. В зависимости от этого я выстраиваю свою модель.
Затем я приступаю к запеканию. Это перенос деталей high poly модели на low poly. Запекание я делаю в Maya. Так исторически сложилось, что сейчас мне очень нравится как она работает с нормалями. Она прощает больше всего ошибок, скажем так.
После запекания, когда я получил карту нормалей и ambient occlusion, я приступаю к текстурингу. Текстурирование я делаю в Substance Painter. На данный момент это самый лучший софт, который позволяет делать практически все, что нужно в плане текстур.
На выходе мы получаем low poly модель и набор текстур. Ну а дальше — это зависит от того, для чего делалась модель. Чаще всего, это интеграция в движок. Если я делаю что-то для себя, то загоняю это в Marmoset или в том же Substance Painter пытаюсь красиво отрендерить, выставляю свет, настраиваю материалы, шейдера. Ну и потом постобработка в Photoshop.
Это общий пайплайн для всего. Но, в зависимости от того, для каких целей нужна модель, в каких-то моментах он будет отличаться.
Например, для танков в игре World of Tanks сначала делается low poly, а затем high poly. Потому что Wargaming важно, чтобы все углы брони, все расстояния — все соответствовало историческим данным. Чтобы было один в один, с допуском в пару миллиметров. Это такой нюанс. У каждой компании есть свои нюансы.
Если мы говорим про окружение, сейчас есть очень много методик, как делать без high poly в принципе. Буквально все environment объекты (заборы, ящики, какую-то технику, балки, коридоры) можно делать с помощью одной текстуры, без запекания и high poly. Все это тоже свой отдельный pipeline.
Поэтому, повторюсь, все зависит от конкретных требований куда мы это делаем.
Какие еще есть особенности, на которые следует обратить внимание при моделировании?
Если мы предполагаем, что high poly модель будет запекаться, мы учитываем это и некоторые элементы строим по-другому. Если какая-то гайка или болт будут перенесены на карту нормалей, их процесс построения немного меняется. Они, например, сужаются к верху, чтобы получить хороший результат на карте нормалей.
Если мы говорим об UV развертке, нужно понимать, в каких местах ее разрезать, чтобы карта нормалей потом корректно запеклась и не было никаких артефактов.
В двух словах — прежде чем браться за модель, нужно четко понимать, зачем это делается. Если хочется просто сделать хорошую high poly модель, выложить ее на ArtStation и получить лайки, то можно на очень много вещей не обращать внимание. Можно забить на топологию, забить на некоторые углы.
Когда модель делается для себя, можно не обращать внимание на полигонаж. Если ты просто хочешь, чтобы модель смотрелась хорошо, ты можешь позволить себе добавить полигонов в каких-то местах и сделать там красивые круглые детали. Тебе за это ничего не будет. Зато модель будет выглядеть хорошо.
Когда же у тебя есть четкие требования вложиться в 40-50 тысяч полигонов, тут уже себе этого позволить нельзя. Нужно подходить к этому вопросу очень серьезно, потому что постоянно стоит выбор куда потратить полигоны: на закругление какой-то детали, или лучше где-то добавить еще деталь, которую предполагали запечь, чтобы силуэт был красивее. Все эти нюансы зависят от того, куда эта модель готовится.
Помогает ли в моделировании техники инженерное образование и можно ли без него?
Я по образованию конструктор самолетов и вертолетов. Инженерное образование помогает мне очень сильно. Особенно, когда мы говорим про какие-то концепты, то есть про что-то не существующее. Я уже насмотрелся на эти узлы и на то, как детали друг с другом стыкуются. После этого правильно выстраивать модель, безусловно, намного проще.
Честно говоря, когда открываешь работы концептеров, даже хороших, которые делают крутые вещи, можно очень сильно критиковать, в плане, как это может работать. Точнее, не может работать. Особенно летательные аппараты.
Безусловно, нужно иметь понимание. Если образования нет, помогает куча референсов. Я бы вообще рекомендовал первым делом собирать огромную доску референсов. Вплоть до узлов. Я бы даже сказал, что узлы — это самое важное. Общую форму можно выставить какую угодно, но конкретно как все друг с другом работает — это детали, на которые обращают внимание.
В мире есть очень много фотографий, которые можно смело использовать. Так что образование — это очень хорошо, оно помогает. Но если его нет, есть референсы.
Почему вы захотели преподавать?
Если очень просто сказать — я попробовал, мне понравилось. Был положительный фидбек от учеников. Вообще, в целом, это связано с обучением. На магистратуре у меня было много предметов связанных с тем, чтобы потом начать преподавать. Это была такая особенность магистратуры.
Сейчас уже их судеб не знаю, но в первое время после занятий все чего-то начали добиваться, чего-то хотеть. Мне нравится делиться знаниями, а если это получается и есть отличный фидбек, то почему бы и нет. Больше всего мне нравится очное обучение. Когда ты приходишь и общаешься в живую — это лучше всего.
Совет начинающим
Может быть мой совет послужит демотиватором, но, чтобы добиться каких-то вещей, чтобы делать крутые работы, нужно вложить в это очень много времени. Нужно пройти очень много неудачных работ. Что-то не так запекается, как-то странно себя ведет, не получаются текстуры. Нужно быть готовым к тому, что сразу все не получится и это своего рода работа. То, что кажется очень легким, легко только потому, что на это было потрачено очень много времени, усилий и бессонных ночей.
Я советую понимать это и не сдаваться при первых трудностях. Это тяжело, но очень интересно.
Повысьте свой уровень на продвинутом курсе 3D-скульптинга в ZBrush, чтобы ваши модели соответствовали высоким стандартам гейм индустрии. Онлайн занятия стартуют 30.11.19. Преподаватель: Александр Галевский.