- Понятие модели и моделирования
- 1.2.3. Классификация моделей и моделирования по признаку «способ реализации модели»
- 1.3. Этапы моделирования
- Виды моделирования. Основы скульптинга, ретопологии и развертки
- Способы моделирования
- 1. Полигональное моделирование
- 2. NURBS моделирование
- 3. Точное моделирование в Сапрах
- Про полигоны
- Скульптинг
- Ретопология
- Развертка
Понятие модели и моделирования
1.2.3. Классификация моделей и моделирования по признаку «способ реализации модели»
Согласно этому признаку модели делятся на два обширных класса:
- абстрактные (мысленные) модели;
- материальные модели.
Нередко в практике моделирования присутствуют смешанные, абстрактно-материальные модели.
Абстрактные модели представляют собой определенные конструкции из общепринятых знаков на бумаге или другом материальном носителе или в виде компьютерной программы.
Абстрактные модели, не вдаваясь в излишнюю детализацию, можно разделить на:
Символическая модель — это логический объект, замещающий реальный процесс и выражающий основные свойства его отношений с помощью определенной системы знаков или символов. Это либо слова естественного языка, либо слова соответствующего тезауруса , графики, диаграммы и т. п.
Символическая модель может иметь самостоятельное значение, но, как правило, ее построение является начальным этапом любого другого моделирования.
Математическое моделирование — это процесс установления соответствия моделируемому объекту некоторой математической конструкции, называемой математической моделью, и исследование этой модели, позволяющее получить характеристики моделируемого объекта.
Математическое моделирование — главная цель и основное содержание изучаемой дисциплины.
Математические модели могут быть:
- аналитическими;
- имитационными;
- смешанными (аналитико-имитационными).
Аналитические модели — это функциональные соотношения: системы алгебраических, дифференциальных, интегро-дифференциальных уравнений, логических условий. Уравнения Максвелла — аналитическая модель электромагнитного поля. Закон Ома — модель электрической цепи.
Преобразование математических моделей по известным законам и правилам можно рассматривать как эксперименты. Решение на основе аналитических моделей может быть получено в результате однократного просчета безотносительно к конкретным значениям характеристик («в общем виде»). Это наглядно и удобно для выявления закономерностей. Однако для сложных систем построить аналитическую модель, достаточно полно отражающую реальный процесс, удается не всегда. Тем не менее, есть процессы, например, марковские, актуальность моделирования которых аналитическими моделями доказана практикой.
Имитационное моделирование. Создание вычислительных машин обусловило развитие нового подкласса математических моделей — имитационных.
Имитационное моделирование предполагает представление модели в виде некоторого алгоритма — компьютерной программы, — выполнение которого имитирует последовательность смены состояний в системе и таким образом представляет собой поведение моделируемой системы.
Процесс создания и испытания таких моделей называется имитационным моделированием, а сам алгоритм — имитационной моделью.
В чем заключается отличие имитационных и аналитических моделей?
В случае аналитического моделирования ЭВМ является мощным калькулятором, арифмометром. Аналитическая модель решается на ЭВМ.
В случае же имитационного моделирования имитационная модель — программа — реализуется на ЭВМ.
Имитационные модели достаточно просто учитывают влияние случайных факторов. Для аналитических моделей это серьезная проблема. При наличии случайных факторов необходимые характеристики моделируемых процессов получаются многократными прогонами (реализациями) имитационной модели и дальнейшей статистической обработкой накопленной информации. Поэтому часто имитационное моделирование процессов со случайными факторами называют статистическим моделированием.
Если исследование объекта затруднено использованием только аналитического или имитационного моделирования, то применяют смешанное (комбинированное), аналитико-имитационное моделирование. При построении таких моделей процессы функционирования объекта декомпозируются на составляющие подпроцессы, и для которых, возможно, используют аналитические модели, а для остальных подпроцессов строят имитационные модели.
Материальное моделирование основано на применении моделей, представляющих собой реальные технические конструкции. Это может быть сам объект или его элементы (натурное моделирование). Это может быть специальное устройство — модель, имеющая либо физическое, либо геометрическое подобие оригиналу. Это может быть устройство иной физической природы, чем оригинал, но процессы в котором описываются аналогичными математическими соотношениями. Это так называемое аналоговое моделирование. Такая аналогия наблюдается, например, между колебаниями антенны спутниковой связи под ветровой нагрузкой и колебанием электрического тока в специально подобранной электрической цепи.
Нередко создаются материально-абстрактные модели. Та часть операции, которая не поддается математическому описанию, моделируется материально, остальная — абстрактно. Таковы, например, командно-штабные учения, когда работа штабов представляет собой натурный эксперимент, а действия войск отображаются в документах.
Классификация по рассмотренному признаку — способу реализации модели — показана на рис. 1.2.
1.3. Этапы моделирования
Математическое моделирование как, впрочем, и любое другое, считается искусством и наукой. Известный специалист в области имитационного моделирования Роберт Шеннон так назвал свою широко известную в научном и инженерном мире книгу: » Имитационное моделирование — искусство и наука». Поэтому в инженерной практике нет формализованной инструкции, как создавать модели. И, тем не менее, анализ приемов, которые используют разработчики моделей, позволяет усмотреть достаточно прозрачную этапность моделирования.
Первый этап: уяснение целей моделирования. Вообще-то это главный этап любой деятельности. Цель существенным образом определяет содержание остальных этапов моделирования. Заметим, что различие между простой системой и сложной порождается не столько их сущностью, но и целями, которые ставит исследователь.
Обычно целями моделирования являются:
- прогноз поведения объекта при новых режимах, сочетаниях факторов и т. п.;
- подбор сочетания и значений факторов, обеспечивающих оптимальное значение показателей эффективности процесса;
- анализ чувствительности системы на изменение тех или иных факторов;
- проверка различного рода гипотез о характеристиках случайных параметров исследуемого процесса;
- определение функциональных связей между поведением («реакцией») системы и влияющими факторами, что может способствовать прогнозу поведения или анализу чувствительности;
- уяснение сущности, лучшее понимание объекта исследования, а также формирование первых навыков для эксплуатации моделируемой или действующей системы.
Второй этап: построение концептуальной модели. Концептуальная модель (от лат. conception ) — модель на уровне определяющего замысла, который формируется при изучении моделируемого объекта. На этом этапе исследуется объект , устанавливаются необходимые упрощения и аппроксимации. Выявляются существенные аспекты, исключаются второстепенные. Устанавливаются единицы измерения и диапазоны изменения переменных модели. Если возможно, то концептуальная модель представляется в виде известных и хорошо разработанных систем: массового обслуживания, управления, авторегулирования, разного рода автоматов и т. д. Концептуальная модель полностью подводит итог изучению проектной документации или экспериментальному обследованию моделируемого объекта.
Результатом второго этапа является обобщенная схема модели, полностью подготовленная для математического описания — построения математической модели.
Третий этап: выбор языка программирования или моделирования, разработка алгоритма и программы модели. Модель может быть аналитической или имитационной, или их сочетанием. В случае аналитической модели исследователь должен владеть методами решения.
В истории математики (а это, впрочем, и есть история математического моделирования) есть много примеров тому, когда необходимость моделирования разного рода процессов приводила к новым открытиям. Например, необходимость моделирования движения привела к открытию и разработке дифференциального исчисления (Лейбниц и Ньютон) и соответствующих методов решения. Проблемы аналитического моделирования остойчивости кораблей привели академика Крылова А. Н. к созданию теории приближенных вычислений и аналоговой вычислительной машины.
Результатом третьего этапа моделирования является программа , составленная на наиболее удобном для моделирования и исследования языке — универсальном или специальном.
Четвертый этап: планирование эксперимента. Математическая модель является объектом эксперимента. Эксперимент должен быть в максимально возможной степени информативным, удовлетворять ограничениям, обеспечивать получение данных с необходимой точностью и достоверностью. Существует теория планирования эксперимента, нужные нам элементы этой теории мы изучим в соответствующем месте дисциплины.
Результат четвертого этапа — план эксперимента.
Пятый этап: выполнение эксперимента с моделью. Если модель аналитическая, то эксперимент сводится к выполнению расчетов при варьируемых исходных данных. При имитационном моделировании модель реализуется на ЭВМ с фиксацией и последующей обработкой получаемых данных. Эксперименты проводятся в соответствии с планом, который может быть включен в алгоритм модели. В современных системах моделирования такая возможность есть.
Шестой этап: обработка, анализ и интерпретация данных эксперимента. В соответствии с целью моделирования применяются разнообразные методы обработки: определение разного рода характеристик случайных величин и процессов, выполнение анализов — дисперсионного, регрессионного, факторного и др. Многие из этих методов входят в системы моделирования ( GPSS World, AnyLogic и др.) и могут применяться автоматически. Не исключено, что в ходе анализа полученных результатов модель может быть уточнена, дополнена или даже полностью пересмотрена.
После анализа результатов моделирования осуществляется их интерпретация , то есть перевод результатов в термины предметной области . Это необходимо, так как обычно специалист предметной области (тот, кому нужны результаты исследований) не обладает терминологией математики и моделирования и может выполнять свои задачи, оперируя лишь хорошо знакомыми ему понятиями.
На этом рассмотрение последовательности моделирования закончим, сделав весьма важный вывод о необходимости документирования результатов каждого этапа. Это необходимо в силу следующих причин.
Во-первых, моделирование процесс итеративный, то есть с каждого этапа может осуществляться возврат на любой из предыдущих этапов для уточнения информации, необходимой на этом этапе, а документация может сохранить результаты, полученные на предыдущей итерации.
Во-вторых, в случае исследования сложной системы в нем участвуют большие коллективы разработчиков, причем различные этапы выполняются различными коллективами. Поэтому результаты, полученные на каждом этапе, должны быть переносимы на последующие этапы, то есть иметь унифицированную форму представления и понятное другим заинтересованным специалистам содержание.
В-третьих, результат каждого из этапов должен являться самоценным продуктом. Например, концептуальная модель может и не использоваться для дальнейшего преобразования в математическую модель, а являться описанием, хранящим информацию о системе, которое может использоваться как архив , в качестве средства обучения и т. д.
Источник
Виды моделирования. Основы скульптинга, ретопологии и развертки
В этой статье мы поговорим про скульптинг, ретопологию и развертку. Но сначала нужно определиться с целью. Что мы будем моделировать, и каким способом?
Предположим, что мы решили создавать персонажа для игры, но что если это будет окружение, архитектура или что-то еще? Сначала нужно узнать какие бывают способы моделирования и понять какой нам больше подходит.
Способы моделирования
1. Полигональное моделирование
Это, наверное, самый популярный способ разработки 3D модели. Суть заключается в создании и редактировании сетки из полигонов, которые состоят из вершин и ребер. Нажимая на левую клавишу мыши мы создаем новую вершину, которая соединяется ребром.
Такой процесс моделирования можно представить как форму, например, лица, покрытую прямоугольниками с разной степенью перспективного искажения.
Говоря простым языком: «Мы создаем сетку, которая состоит из примитивных фигур (примитивов)». В результате получается многогранник. Чтобы лучше ассоциировать, можно вспомнить как в фильмах и анимации много маленьких роботов превращались в одного большого. Так же и с полигональным моделированием. Много примитивов составляют одну большую модель.
Кстати, чаще всего у полигона четыре грани, но бывает и три. Примитивы с тремя гранями используются только в определенных случаях, а вот больше четырех граней быть не может. Привязки к реальным единицам измерения нет, поэтому модель получается неточной. Соответственно, такой способ не подходит для моделирования каких-то деталей или архитектурных проектов, где важен каждый миллиметр.
Вы просто передвигаете вершину, ребро или весь полигон, ориентируясь на внешний вид. Полигональное моделирование хорошо подойдет, если вы моделируете художественную вещь, и вам не важны точные размеры. Это может быть персонаж, локация уровня игры или животное.
2. NURBS моделирование
Основное отличие этого способа от полигонального моделирования в плавности. NURBS модель состоит не из полигонов, а из кривых (сплайнов), однако при визуализации все равно преобразуется в полигоны, хотя внутри системы моделирования остается в кривых. Используется для создания плавных органических форм и моделей.
Допустим, нужно представить сложную трехмерную поверхность природного происхождения. Ее можно описывать вершинами и разбивать на примитивы, но на это уйдет много времени, а изменять кривизну поверхности в полигонах будет просто не удобно. В таких случаях как раз и применим способ NURBS моделирования.
3. Точное моделирование в Сапрах
В этом способе модель задается математическими формулами, поэтому поверхность модели будет абсолютно гладкая при любом приближении, а настроить ее можно с точностью до миллиметра.
Используется, когда важна точность, а не художественная выразительность. Чисто теоретически, таким способом можно создать персонажа, но но это займет огромное количество времени и усилий, в отличие от полигонального моделирования и скульптинга.
Про полигоны
Возвращаемся к полигона. Почему в каких-то моделях их больше, а в каких-то меньше?
Дело в том, что модели делятся по количеству полигонов:
- Hi-poly — большое количество полигонов (примерно, 1 — 3 миллиона).
- Mid-poly — среднее количество полигонов.
- Low-poly — малое количество полигонов (примерно 5 — 10 тысяч).
Соответственно чем больше полигонов, тем более детализирована модель, но требует больше ресурсов. Таким образом hi-poly — самая детализированная.
В играх на ПК и консоли чаще всего используют mid-poly, иногда hi-poly (в AAA проектах), а в мобильных играх low poly.
Скульптинг
Приступаем к части моделирования под названием «Скульптинг». Это первый 3D этап в создании персонаж. В нем персонаж лепится как из глины, отсюда и название. На этом этапе можно окунуться в творчество и лепить не задумываясь о полигонах. А их будет много. Не волнуйтесь, позже все это дело мы упростим. Кстати, для обучения скульптингу хорошо бы приобрести графический планшет.
И так, плавно переходим к основной теме статьи. Но я ничего же не сказал про программы. Предлагаю взять Zbrush для скульптинга и 3D Coat для ретопологии и развертки. Первым делом нужно запустить Zbrush. Мы попадаем в основной экран программы. Сначала нам нужно создать сферу.
Во вкладке Tool, которая находится в правой части экрана, выбираем пункт «Sphere3D». Вытягиваем сферу в рабочей области нажатием лкм.
Для перемещения используем горячие клавиши:
- лкм — вращение.
- лкм + alt — перемещение.
- ctrl + пкм — приближение.
Нажимаем «Load Next User Interface Layout».
Появляется панель с кистями. Для редактирования сферы нажимаем «Edit».
Чтобы не получать такое сообщение нужно нажать «Make PolyMesh 3D » в панели Tool.
Теперь можно скульптить. Осталось только включить симметрию на клавишу «X». При нажатии на alt кисть начинает работать в обратную сторону. Если кисть выдавливала, то наоборот будет вдавливать. Для ушей, глаз, носа лучше всего создавать отдельные сферы и скульптить их отдельно. Со временем сетка будет меняться и понадобится пересчитать полигоны. Для этого во вкладке Geometry нужно нажать DynaMesh.
Если работать только с одной сферой, то вся детализация сойдет на нет при пересчете полигонов. Так что лучше делать это отдельными объектами, а под конец работы объединить.
Если нет идей для скульптинга, можно зайти на artstation.com и найти понравившуюся работу. Можно найти концепт-арты, добавить Zbrush и использовать как референс для тренировки.
В процессе работы над моделью может понадобиться инструмент «маска». Применить его можно нажав на ctrl. Маска — это область на которую не реагирует кисть. Таким образом можно лепить много чего интересного.
Под конец работы над моделью получится примерно 1 — 3 миллиона полигонов. Такую модель будет сложно открыть в другой программе, поэтому нужно сократить количество полигонов. Для этого во вкладке Zplugin выберем пункт «Decimation Master» и нажмем на Pre-process All. Zbrush запустит процесс и сократит количество полигонов.
Готовую модель можно вывести в формате obj. Его кушают практически все редакторы. Сохранить можно нажав на «Export» в панели Tool.
Ретопология
После скульптинга у нас появится файл с моделью в расширении .obj. Открываем 3D Coat и перетаскиваем туда файл.
В нашей модели еще достаточно много полигонов. Чтобы упростить нужно как бы покрыть модель полигонами вручную, сохраняя форму. Это и есть процесс ретопологии. Чтобы приступить, нужно перейти во вкладку Retopology. Тут нам нужно фактически вручную рисовать полигоны. Вот пример того, как они должны располагаться.
Вокруг глаз и рта полигоны выстраиваем кругом. На месте сгибов добавляем больше полигонов, а на неподвижных частях полигоны могут быть большие и в малом количестве, например, на затылке и лбе.
Развертка
Развертка или UV mapping очень важный процесс в разработке модели. На этом этапе мы уже подготавливаем модель к текстурированию.В чем суть? Представьте картонную коробку, которую разложили на плоскости. Коробку разобрали и теперь она в виде одного листа картона. Так же и с нашей моделью, мы разложили ее в 2D пространстве.
Нажимаем на вкладку uv mapping. 3D Coat показывает развертку модели на данный момент. Синим и красным цветом отмечены артефакты. Чтобы текстура без проблем ложилась на модель нужно, чтобы во вкладке UV Preview был только серый цвет. Как это сделать? На shift + лкм нужно удалить ненужные швы так, чтобы модель разделилась на части. UV развертка нужна для удобства текстурирования и экономии ресурсов.
После того, как на модели не останется артефактов нужно нажать упаковать UV, а потом применить UV раскладку. Поздравляю, модель окончательно готова к анимации и текстурированию.
Источник