Разрушаемая растительность

Материал из CryWiki Russia

Перейти к: навигация, поиск
О статье
АвторAndreyFilantrop
СложностьСредняя
ТребованияCrysis Mod SDK 1.2; Sandbox 2; 3d max (в статье 3 d max 2008).
Дата добавления26/02/11


Содержание

Процедуральная разрушаемая растительность

Введение

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

Общий вид объектов и образцы

Предполагается, что на момент прочтения этой статьи у вас уже имеется готовый растительный объект - дерево. Например как банановое дерево на картинке ниже:

Просто банан:

SimpleBanana.jpg

Разрушенная часть ствола:

AssetCreation BreakableVegetation explosion shape.jpg

Образцы

Файл:Samples.rar

Общая установка в 3d приложениях

Для материала ствола (в нашем случае Просто банана), установите галочку в позицию «Physicalize» в редакторе материалов Material Editor. Параметр физики установите в позицию «default».

Вот как должны выглядеть параметры шейдера:

AssetCreation BreakableVegetation physicalize.jpg

Важно: Удалите любые физические объекты с прокси с тех частей, которые вы хотите сделать разрушаемыми (например: ствол Просто банана) Сам ствол дерева должен быть замкнутым элементом.

Далее создайте заранее предопределённый объект - это должен быть отдельный cgf файл, который используется для образования «шапки», т.е. закрытия концов разрушенных частей. Этот объект нарисован на картинке выше под названием «Разрушенная часть ствола:»

Советы:

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

2. Чтобы листва падала вместе с верхним кончиком растения а не висела в воздухе, их размещение относительно ствола на самом деле не играет роли, т.е. они могут пересекать, а могут и не пересекать ствол (по крайней мере я пробовал по разному - и одинаково работало нормально).

3. Для упрощения создания разрушаемого объекта для начала можно использовать оригинальный файл из архива - при экспорте он работает отлично (проверено автором статьи).

Установка в редакторе Sandbox Editor

1. В редакторе материалов в Sandbox Material Editor материал поверхности ствола должен быть установлен ​​на «mat_wood_breakable» . 2. Surfacetype - тип поверхности - указывает этой «шапке» закрывать концы обломанных частей. Расположение и имя «шапки» хранятся в скрипте surfacetype. 3. Разрушаемые деревья должны быть установлены при помощи инструмента Vegetation.

Отладка

Примените достаточно силы для объекта чтобы разрушить его. В игре Crysis взрывы ракет гранатомёта или гранаты достаточны для проверки правильности функционирования вашего объекта.

Эта консольная команда может быть использована для отладки ваших ресурсов в редакторе:

p_draw_helpers 1
Показывает физикализированные сетки.

Чтобы отключить её, замените 1 на 0 или вызовите ещё раз.

Когда появятся все прокси дерева (серого цвета) - вы увидите, что один прокси точно повторяет форму ствола дерева. Вопрос: откуда взялся этот прокси, если у вас кроме самого ствола ничего в этом месте нет? Ответ: это не отдельный прокси - а ваш ствол, который так отображается, потому что вы поставили галочку в его материале в 3d приложении в позицию «Physicalize». Так и должно быть.

См. также