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

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

(Различия между версиями)
Перейти к: навигация, поиск
(Отладка)
(Викификация. Не правильное определение категории)
 
Строка 1: Строка 1:
-
<!-- Please enter the information about your article for each section
+
{{Статья
-
    after the equal sign. The information will be translated into a
+
|автор=AndreyFilantrop
-
    formatted page upon being saved.
+
|сложность=Средняя
-
-->{{Статья|автор=AndreyFilantrop |сложность=Средняя|совместимости=All|требования= Crysis Mod SDK 1.2; Sandbox 2; 3d max (в статье 3 d max 2008). |добавлена=26/02/11}} <!-- The article's topic (Basic Level Design, Terrain...)-->
+
|совместимости=Все
-
 
+
|требования=Crysis Mod SDK 1.2; Sandbox 2; 3ds Max
-
== Процедуральная разрушаемая растительность<br/> ==
+
|добавлена=26/02/11
-
 
+
}}
 +
== Процедуральная разрушаемая растительность ==
== Введение ==
== Введение ==
-
 
Базовая технология физики достаточно универсальна для того, чтобы быть использованной при разрушении множества разных объектов, а не только стволов деревьев. Это скорее вопрос настройки ресурсов. Для примера, однако, ниже я остановлюсь на стволах деревьев.
Базовая технология физики достаточно универсальна для того, чтобы быть использованной при разрушении множества разных объектов, а не только стволов деревьев. Это скорее вопрос настройки ресурсов. Для примера, однако, ниже я остановлюсь на стволах деревьев.
== Общий вид объектов и образцы ==
== Общий вид объектов и образцы ==
-
Предполагается, что на момент прочтения этой статьи у вас уже имеется готовый растительный объект - дерево. Например как банановое дерево на картинке ниже:
+
Предполагается, что на момент прочтения этой статьи у вас уже имеется готовый растительный объект — дерево. Например как банановое дерево на картинке ниже:
'''Просто банан:'''
'''Просто банан:'''
Строка 23: Строка 23:
=== Образцы ===
=== Образцы ===
-
 
+
* [[Файл:Samples.rar]]
-
[[Файл:Samples.rar]]
+
== Общая установка в 3d приложениях ==
== Общая установка в 3d приложениях ==
-
 
Для материала ствола (в нашем случае '''Просто банана'''), установите галочку в позицию '''«Physicalize»''' в редакторе материалов '''Material Editor'''. Параметр физики установите в позицию '''«default»'''.
Для материала ствола (в нашем случае '''Просто банана'''), установите галочку в позицию '''«Physicalize»''' в редакторе материалов '''Material Editor'''. Параметр физики установите в позицию '''«default»'''.
Строка 36: Строка 34:
Важно: Удалите любые физические объекты с '''прокси''' с тех частей, которые вы хотите сделать разрушаемыми (например: ствол '''Просто банана''') Сам ствол дерева должен быть замкнутым элементом.
Важно: Удалите любые физические объекты с '''прокси''' с тех частей, которые вы хотите сделать разрушаемыми (например: ствол '''Просто банана''') Сам ствол дерева должен быть замкнутым элементом.
-
Далее создайте заранее предопределённый объект - это должен быть отдельный '''cgf''' файл, который используется для образования '''«шапки»''', т.е. закрытия концов разрушенных частей. Этот объект нарисован на картинке выше под названием «'''Разрушенная часть ствола:'''»
+
Далее создайте заранее предопределённый объект — это должен быть отдельный '''cgf''' файл, который используется для образования '''«шапки»''', то есть закрытия концов разрушенных частей. Этот объект нарисован на картинке выше под названием «'''Разрушенная часть ствола:'''»
-
Советы:  
+
Советы:
-
1. Не делайте ствол растения слишком толстым - он будет расщепляться на части, которые не будут падать на землю, а висеть в воздухе.  
+
# Не делайте ствол растения слишком толстым — он будет расщепляться на части, которые не будут падать на землю, а висеть в воздухе.
-
 
+
# Чтобы листва падала вместе с верхним кончиком растения а не висела в воздухе, их размещение относительно ствола на самом деле не играет роли, то есть они могут пересекать, а могут и не пересекать ствол (по крайней мере я пробовал по разному — и одинаково работало нормально).
-
2. Чтобы листва падала вместе с верхним кончиком растения а не висела в воздухе, их размещение относительно ствола на самом деле не играет роли, т.е. они могут пересекать, а могут и не пересекать ствол (по крайней мере я пробовал по разному - и одинаково работало нормально).  
+
# Для упрощения создания разрушаемого объекта для начала можно использовать оригинальный файл из архива — при экспорте он работает отлично (проверено автором статьи).
-
 
+
-
3. Для упрощения создания разрушаемого объекта для начала можно использовать оригинальный файл из архива - при экспорте он работает отлично (проверено автором статьи).
+
== Установка в редакторе Sandbox Editor ==
== Установка в редакторе Sandbox Editor ==
-
 
+
# В редакторе материалов в '''Sandbox Material Editor''' материал поверхности ствола должен быть установлен ​​на '''«mat_wood_breakable»''' .
-
1. В редакторе материалов в '''Sandbox Material Editor''' материал поверхности ствола должен быть установлен ​​на '''«mat_wood_breakable»''' .
+
# '''Surfacetype''' — тип поверхности — указывает этой '''«шапке»''' закрывать концы обломанных частей. Расположение и имя '''«шапки»''' хранятся в скрипте '''surfacetype'''.
-
2. '''Surfacetype''' - тип поверхности - указывает этой '''«шапке»''' закрывать концы обломанных частей. Расположение и имя '''«шапки»''' хранятся в скрипте '''surfacetype'''.
+
# Разрушаемые деревья должны быть установлены при помощи инструмента '''Vegetation'''.
-
3. Разрушаемые деревья должны быть установлены при помощи инструмента '''Vegetation'''.
+
=== Отладка ===
=== Отладка ===
-
 
Примените достаточно силы для объекта чтобы разрушить его. В игре '''Crysis''' взрывы ракет гранатомёта или гранаты достаточны для проверки правильности функционирования вашего объекта.
Примените достаточно силы для объекта чтобы разрушить его. В игре '''Crysis''' взрывы ракет гранатомёта или гранаты достаточны для проверки правильности функционирования вашего объекта.
Эта консольная команда может быть использована для отладки ваших ресурсов в редакторе:
Эта консольная команда может быть использована для отладки ваших ресурсов в редакторе:
-
;p_draw_helpers 1
+
;p_draw_helpers 1: Показывает физикализированные сетки.
-
:Показывает физикализированные сетки.
+
Чтобы отключить её, замените 1 на 0 или вызовите ещё раз.
-
Чтобы отключить её, замените 1 на 0 или вызовите ещё раз.  
+
-
Когда появятся все прокси дерева (серого цвета) - вы увидите, что один прокси точно повторяет форму ствола дерева. Вопрос: откуда взялся этот прокси, если у вас кроме самого ствола ничего в этом месте нет? Ответ: это не отдельный прокси - а ваш ствол, который так отображается, потому что вы поставили галочку в его материале в 3d приложении в позицию '''«Physicalize»'''. Так и должно быть.
+
Когда появятся все прокси дерева (серого цвета) — вы увидите, что один прокси точно повторяет форму ствола дерева. Вопрос: откуда взялся этот прокси, если у вас кроме самого ствола ничего в этом месте нет? Ответ: это не отдельный прокси — а ваш ствол, который так отображается, потому что вы поставили галочку в его материале в 3d приложении в позицию '''«Physicalize»'''. Так и должно быть.
== См. также ==
== См. также ==
 +
* [[Реакция на прикосновение]]
 +
* [[Настройка деревьев]]
 +
* [[Использование инструмента Vegetation]]
-
*[[Реакция на прикосновение]]
+
[[Категория:Официальная документация:Создание ресурсов:Основы]]
-
*[[Настройка деревьев]]
+
-
*[[Использование инструмента Vegetation]]
+
-
 
+
-
<br/>[[Category:Официальная документация:Создание ресурсов:Основы|Официальная_документация:Создание_ресурсов:Основы]] <br/> <br/>
+

Текущая версия на 19:08, 10 марта 2012

О статье
АвторAndreyFilantrop
СложностьСредняя
ТребованияCrysis Mod SDK 1.2; Sandbox 2; 3ds Max
Дата добавления26/02/11


Содержание

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

Введение

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

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

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

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

SimpleBanana.jpg

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

AssetCreation BreakableVegetation explosion shape.jpg

Образцы

Общая установка в 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». Так и должно быть.

См. также