Тема: E13A
Показать сообщение отдельно
Старый 01.02.2013, 17:48   #11
choisek
Местный
 
Регистрация: 04.09.2009
Сообщений: 115
По умолчанию

Дело в том, что в жизни есть много всяких дел, которыми хотелось бы заняться, а еще есть много всяких дел, которыми заниматься необходимо. На все времени не хватает, к сожалению и приходится выбирать. В частности, на то, чтобы писать на форуме в последние пол года у меня времени не нашлось. Зато, нашлось время, чтобы продолжить постройку модели.
Фактически, на данный момент закончено 99% работы. Сделаны лоды, тени, колижен, крючки. Осталось довести до ума текстуры повреждений и сделать оверлеи для размещения на модели ОЗ и тактических номеров. На этом моделирование будет закончено и останется только экспорт.
На все, сделанное до нынешнего момента было потрачено не более 30 часов работы. Но, эти 30 часов, конечно, растянулись на несколько месяцев, так как ни возможности, ни желания просидеть над этой работы столько времени подряд у меня не было.

Большая часть трудозатрат за описанный период пришлась на создание лодов. Поэтому, остановлюсь на данном вопросе подробнее.

Что такое "лоды" вообще? Термин происходит от аббревиатуры LOD, что означает Level Of Detail model. Дело в том, что по мере удаления объекта от наблюдателя, как в жизни, так и в виртуальном трехмерном пространстве, оный наблюдатель перестает различать мелкие детали объекта, точные очертания более крупных деталей и т.п.
Поэтому, вполне логичной была идея, с целью уменьшения нагрузки на графическую подсистему компьютера, показывать наблюдателю, т.е. игроку, все менее и менее детальную модель, по мере ее удаления от точки, в которой находится наблюдатель. Ну и в самом деле, зачем рендерить модель из 5000 треугольников, если на расстоянии 500 метров она выглядит точно так же, как модель из 1000 треугольников?

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

Основной лод (100% треугольников) -> 1-й лод (75% от основного) -> 2-й лод (50% от 1-го лода) -> и далее каждый последующий лод это 50% треугольников от предыдущего.

Для создания лодов обычно используют 2 основных метода: метод коллапса рядов ребер и метод удаления линий ребер. Оба метода позволяют упростить модель, не разрушая маппинга, что значительно упрощает и ускоряет создание лодов. В большинстве случаев эти два метода комбинируют, иногда используя в дополнение и другие способы, например, создание некоторых деталей заново, в более упрощенном виде. Последнее, как правило, применяется для наименее детальных, или, как говорят, "дальних" лодов.

Для наглядности демострации основных методов создания лодов, я изготовил вот такое наглядное пособие:



Данный объект замаплен примерно таким же образом, как обычно мапятся низкополигональные игровые модели техники, т.е. плоским маппингом в трех направлениях. Для наглядности, я выделил жирными желтыми полосами ребра, по которым проходит стык маппинга от разных проекций.

Первый, наиболее быстрый метод создания лодов - метод коллапса рядов ребер:

1. В режиме Editable Poly-Edge, выделяем несколько рядов ребер так, чтобы они не касались ребер, по которым проходит граница маппинга



2. Нажимаем кнопку Collapse



3. На этой же картинке видно, что далее выделям снова несколько рядов параллельных ребер, но уже в перпендикулярном предыдущему разу напрвлению. Снова жмем кнопку Collapse и получаем финальный результат:



Как видно, объект значительно упростился, но маппинг при этом сохранен полностью. При работе с реальными объектами 100%-й сохранности маппинга не всегда удается добиться, но слегка подредактировать развертку - это все равно гораздо проще, чем создавать ее заново.

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

не симметричным.

1. Сначала выбираем несколько линий ребер, например, каждое второе



2. С помощью модификатора Select Poly выбираем все вершины, принадлежащие выбранным рание ребрам



при этом снимаем выделение с концевых вершин!

3. Коллапсим стек Select Poly и в режиме Editable Poly-Edge жмем кнопку Remove.



Как видно, выделенные ребра исчезли. Однако количество треугольников в объектк осталось тем же, так как вершины все еще не удалены. Переходим в режим редактирования вершин (Editable Poly-Vertex) и снова жмем Remove - нужные вершины были выделены в шаге №2. Получаем такой результат:



Далее, по той же схеме удаляем несколько линий ребер в перпендикулярном предыдущему, направлении



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