Физические свойства

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

(Различия между версиями)
Перейти к: навигация, поиск
 
Строка 32: Строка 32:
:Отметим, что, когда несколько объектов находятся в контакте, то для всей группы используется наибольшее затухание.
:Отметим, что, когда несколько объектов находятся в контакте, то для всей группы используется наибольшее затухание.
-
;FixedDamping (true/false):Если истина (True), то у этого объекта будет усиленно его затухание на всю группу столкновения (используйте, когда вы не хотите чтобы конкретный объект замедлился от сильно затухающей сущносои, такой как мёртвое тело).
+
;FixedDamping (true/false):Если истина (True), то у этого объекта будет усиленно его затухание на всю группу столкновения (используйте, когда вы не хотите чтобы конкретный объект замедлился от сильно затухающей сущности, такой как мёртвое тело).
-
;sleep_speed (0.01..0.3):If the object’s kinetic energy falls below some limit over several frames, the object is considered sleeping. This limit is proportional to the square of the sleep speed value. A sleep speed of 0.01 loosely corresponds to the object’s center moving at a velocity of the order of 1 cm/s.
+
;sleep_speed (0.01..0.3):Если кинетическая энергия объекта падает ниже некоторого предела в течение нескольких кадров, то объект считается «спящим». Этот предел пропорционален квадрату скорости сна. Скорость сна 0.01 слабо соответствует центру объекта, движущегося со скоростью порядка 1 см/с.
-
;water_resistance (0..2000):Water resistance coefficient. If non-0, precise water resistance is calculated. Otherwise only water_damping (proportional to the submerged volume) is used to uniformely damp the movement. The former is somewhat slower, but not prohibitively, so it is advised to always set the water resistance. Although water resistance is not too visible on a general object, setting it to a suitable value will prevent very light objects from jumping in the water, and water flow will affect things more realistically.
+
;water_resistance (0..2000):Коэффициент сопротивления воды. Если не-0, то рассчитывается точное сопротивление воды. В противном случае будет использоваться только water_damping (пропорционально объему погружения) для равномерно затухающего движения. Выглядит это не чрезмерно медленно, но всё-таки рекомендуется всегда устанавливать сопротивление воды. Сопротивление воды не слишком заметно на объекте, однако подходящие значения не дадут очень легким объектам тонуть в воде, и поток воды более реалистично подействует на объекты.
-
Note that water damping is used regardless of whether water resistance is 0, so it is better to set damping to 0 when resistance is turned on.
+
:Обратите внимание, что затухание воды (water damping) используется независимо от того, равно ли сопротивление воды нулю, так что лучше установить затухание равное 0, если сопротивление включено.
-
;water_density (100..1000):This parameter could be used to specify that the object’s physical geometry can leak. For instance, ground vehicles usually have quite large geometry volumes, but they are not waterproof, thus Archimedean force acting on them will be less than submerged_volume*1000 (with 1000 being the actual water density). Decreasing per-object effective water density will allow such objects to sink (as they would in reality) while still having large-volume physical geometry. Important note: if you are changing the default value (1000), it’s highly recommended that you also change water_resistance in the same way (a rule of thumb might be to always keep them equal).
+
;water_density (100..1000):Этот параметр может быть использован для указания того, что физическая геометрия объекта может протекать. Например, наземные транспортные средства, как правило, имеют довольно большие объемы геометрии, но геометрия не является водонепроницаемой, таким образом, архимедова сила, действующая на геометрию будет меньше, чем объём погружения умноженный на 1000 (1000 является фактической плотностью воды). Снижение эффективной плотности воды на объекте, позволит таким объектам сливаться (как и есть на самом деле) с большим объемом физической геометрии. Важное замечание: если вы хотите изменить стандартное значение (1000), настоятельно рекомендуется таким же образом изменить water_resistance (учтите правило: удерживайте их значения равными).
-
Some state-specific properties:
+
=== Специфические свойства состояний ===
-
'''RigidBody (true/false)'''
+
;RigidBody (true/false):False означает что сущность статическая, true — симуляция твердого тела. Обратите внимание, что твердое тело может себя вести как статическая сущность, если имеет массу 0 (укажите её явно, или снимите галочку с '''RigidBodyActive'''). Основным различием между твердыми телами и истинной статикой, является то, что физическая система будет знать, что твердые тела могут быть перемещены другими инструментами (например, редактором кат-сцен). Это означает, что у объектов, которые будут внешне анимированы, должна быть нулевая масса, для правильного взаимодействия с физикализированными сущностями.
-
False means a static entity, true — a simulated rigid body. Note that a rigid body can still behave like a static entity if it has mass 0 (set either explicitly or by unchecking '''RigidBodyActive'''). The main difference between these rigid bodies and pure statics is that the physics system knows that they can be moved by some other means (such as the trackview) and expects them to do so. This means that objects that are supposed to be externally animated should be mass-0 rigid bodies in order to interact properly with pure physicalized entities.
+
-
'''Resting (true/false)'''
+
;Resting (true/false):Начальное состояние твердого тела — «сон». Твёрдое тело должно быть разбужено внешним раздражителем (попаданием пули, взрывом, столкновением, взаимодействием игрока и т.д.), для начала симуляции. У '''BasicEntities''' этот флаг выбран без возможности отключения.
-
The rigid body’s initial state is sleeping. It’ll need to be awoken by an external stimulus (bullet hit, explosion, collision, player interaction, etc) in order to start being simulated. '''BasicEntities''' have this flag on unconditionally.
+
-
'''CanBreakOthers (true/false)'''
+
;CanBreakOthers (true/false):Истина (True) если сущность может привести к поломке соединенных объектов путем столкновения с ними (если они преодолели предел прочности). У '''BasicEntities''' этот флаг выбран без возможности отключения.
-
True if the entity can break jointed objects by colliding with them (provided they overcome the strength limit). '''BasicEntities''' have this flag off unconditionally.
+
-
Note that some of these properties can are only exposed in the '''RigidBodyEx''' entity.
+
:Обратите внимание, что некоторые из этих свойств могут быть отключены только у сущности '''RigidBodyEx'''.
 +
=== Специфические свойства '''AnimObject''' ===
-
Some properties, specific to the '''AnimObject''' entity:
+
;Articulated (true/false):Физикализация персонажа, как сочлененную физическую сущность (т. е. с гибкими суставами).
-
'''Articulated (true/false)'''
+
;ActivatePhysicsThreshold]] (0..):Значения больше 0 используются для объектов с предварительно подготовленной физической анимацией (требует включение свойства '''Articulated'''). Определяет степень силы (в долях от силы тяжести), которая должна влиять на части, чтобы те оторвались и полностью контролировались физикой.
-
Physicalizes the character as an articulated physical entity (i.e., with bendable joints).
+
-
'''ActivatePhysicsThreshold]] (0..)'''
+
;ActivatePhysicsDist (0..):Используется для объектов с предварительно подготовленной физической анимацией (требует включение свойства '''Articulated''' и требует значение  '''ActivatePhysicsThreshold''' выше 0). Указывает расстояние от оси, после которого части автоматически отделят себя от анимации и в полной мере физикализируются. 0 отключает расстояние отрыва.
-
Greater than 0 values are used for objects with pre-backed physical animations (requires '''Articulated''' to be on). Specifies the amount of force (in fractions of gravity) that needs to be exerted on a part for it to become detached and fully controlled by the physics.
+
-
'''ActivatePhysicsDist (0..)'''
 
-
Used for objects with pre-baked physical animations (requires '''Articulated''' to be on and '''ActivatePhysicsThreshold''' to be greater than 0). Specifies the distance from the pivot after which parts automatically detach themselves from the animation and become fully physicalized. 0 disables distance-based detachment.
 
-
 
+
'''Дополнение: Таблица сухого статического трения'''
-
'''Addition: Dry static friction reference table'''
+
{|
{|
|-
|-
-
! Material pair
+
! Материал-пара
! μ
! μ
|-
|-
-
| Aluminium/aluminium || 1.9
+
| Алюминий/алюминий || 1.9
|-
|-
-
| Aluminium/steel || 0.61
+
| Алюминий/сталь || 0.61
|-
|-
-
| Brick/brick || 0.65
+
| Кирпич/кирпич || 0.65
|-
|-
-
| Diamond/diamond || 0.1
+
| Алмаз/алмаз || 0.1
|-
|-
-
| Glass/glass || 0.94
+
| Стекло/стекло || 0.94
|-
|-
-
| Glass/metal || 0.5-0.7
+
| Стекло/метал || 0.5-0.7
|-
|-
-
| Gold/gold || 2.5-4.0
+
| Золото/Золото || 2.5-4.0
|-
|-
-
| Ice/ice || 0.1
+
| Лёд/лёд || 0.1
|-
|-
-
| Rubber/concrete || 1.0-4.0
+
| Резина/бетон || 1.0-4.0
|-
|-
-
| Steel/steel || 0.74
+
| Сталь/сталь || 0.74
|-
|-
-
| Wood/stone || 0.4
+
| Дерево/камень || 0.4
|-
|-
-
| Wood/wood || 0.25-0.5
+
| Дерево/дерево || 0.25-0.5
|-
|-
-
| Stone/stone || 0.4-0.7
+
| Камень/камень || 0.4-0.7
|}
|}
-
[[Категория:Official:Asset_Creation:Basics]]
+
[[Категория:Официальная документация:Создание ресурсов:Основы]]

Текущая версия на 15:44, 29 апреля 2011

Физические свойства

Mass, Density
Можно указать либо плотность, либо массу. Если вы укажите что-либо из них, то другим задайте отрицательное значение (-1, или −0,01). Масса и плотность влияют на взаимодействий одних объектов с другими, а также влияет на плавучесть (они тонут, если их плотность больше, чем у воды). Нулевая масса твердого тела (когда масса и плотность равны 0) — в особых случаях означает «живость» твердого тела (перенесено из-за пределов физической системы). Отличием от статической сущности является то, что физика будет знать, что данный объект фактически динамичен, хотя и не будет непосредственно его имитировать.
Отметим, что оба значения описывают одни и те же физические свойства. При указании массы, плотность будет создана автоматически, и наоборот. Соотношение массы равно плотности помноженной на используемый объем. Из этого уравнения следует, что объект является твёрдым; если вы используете прямоугольник в качестве модели пустого ящика, то вы должны высчитать её плотность равную среднему значению между плотностью древесины и внутренней плотности воздуха.
Вот некоторые значения плотности (в кг/м³):
Материал Плотность (кг/м³)
Дерево 500-700
Лёд 900
Вода 1000
Резина 1500
Стекло 2600
Железо 7500
Свинец 11400
Золото 19300
max_time_step (0.005..0.1)
Задаёт максимальный шаг по времени, который может сделать сущность (по умолчанию 0,01). Меньший шаг по времени увеличивает стабильность (может быть необходимо для длинных и тонких объектов), но дорого обходится для производительности.
Каждый раз, когда физический мир запрашивает сделать шаг, объекты, у которых максимальный шаг ниже, чем запрашиваемый, то один кусок сделает большой шаг на более мелкие куски и выполнит несколько подшагов. Если несколько объектов находятся в контакте, то используется наименьший max_time_step.
damping (0..3)
Задаёт силу затухающего колебания при движении объекта. Большинство объектов могут работать с нулевым затухающим колебанием; если объект трудно приспособиться к остальным, попробуйте значения, такие как 0.2-0.3. Значения 0.5 и выше выглядят как апериодичность.
Отметим, что, когда несколько объектов находятся в контакте, то для всей группы используется наибольшее затухание.
FixedDamping (true/false)
Если истина (True), то у этого объекта будет усиленно его затухание на всю группу столкновения (используйте, когда вы не хотите чтобы конкретный объект замедлился от сильно затухающей сущности, такой как мёртвое тело).
sleep_speed (0.01..0.3)
Если кинетическая энергия объекта падает ниже некоторого предела в течение нескольких кадров, то объект считается «спящим». Этот предел пропорционален квадрату скорости сна. Скорость сна 0.01 слабо соответствует центру объекта, движущегося со скоростью порядка 1 см/с.
water_resistance (0..2000)
Коэффициент сопротивления воды. Если не-0, то рассчитывается точное сопротивление воды. В противном случае будет использоваться только water_damping (пропорционально объему погружения) для равномерно затухающего движения. Выглядит это не чрезмерно медленно, но всё-таки рекомендуется всегда устанавливать сопротивление воды. Сопротивление воды не слишком заметно на объекте, однако подходящие значения не дадут очень легким объектам тонуть в воде, и поток воды более реалистично подействует на объекты.
Обратите внимание, что затухание воды (water damping) используется независимо от того, равно ли сопротивление воды нулю, так что лучше установить затухание равное 0, если сопротивление включено.
water_density (100..1000)
Этот параметр может быть использован для указания того, что физическая геометрия объекта может протекать. Например, наземные транспортные средства, как правило, имеют довольно большие объемы геометрии, но геометрия не является водонепроницаемой, таким образом, архимедова сила, действующая на геометрию будет меньше, чем объём погружения умноженный на 1000 (1000 является фактической плотностью воды). Снижение эффективной плотности воды на объекте, позволит таким объектам сливаться (как и есть на самом деле) с большим объемом физической геометрии. Важное замечание: если вы хотите изменить стандартное значение (1000), настоятельно рекомендуется таким же образом изменить water_resistance (учтите правило: удерживайте их значения равными).

Специфические свойства состояний

RigidBody (true/false)
False означает что сущность статическая, true — симуляция твердого тела. Обратите внимание, что твердое тело может себя вести как статическая сущность, если имеет массу 0 (укажите её явно, или снимите галочку с RigidBodyActive). Основным различием между твердыми телами и истинной статикой, является то, что физическая система будет знать, что твердые тела могут быть перемещены другими инструментами (например, редактором кат-сцен). Это означает, что у объектов, которые будут внешне анимированы, должна быть нулевая масса, для правильного взаимодействия с физикализированными сущностями.
Resting (true/false)
Начальное состояние твердого тела — «сон». Твёрдое тело должно быть разбужено внешним раздражителем (попаданием пули, взрывом, столкновением, взаимодействием игрока и т.д.), для начала симуляции. У BasicEntities этот флаг выбран без возможности отключения.
CanBreakOthers (true/false)
Истина (True) если сущность может привести к поломке соединенных объектов путем столкновения с ними (если они преодолели предел прочности). У BasicEntities этот флаг выбран без возможности отключения.
Обратите внимание, что некоторые из этих свойств могут быть отключены только у сущности RigidBodyEx.

Специфические свойства AnimObject

Articulated (true/false)
Физикализация персонажа, как сочлененную физическую сущность (т. е. с гибкими суставами).
ActivatePhysicsThreshold]] (0..)
Значения больше 0 используются для объектов с предварительно подготовленной физической анимацией (требует включение свойства Articulated). Определяет степень силы (в долях от силы тяжести), которая должна влиять на части, чтобы те оторвались и полностью контролировались физикой.
ActivatePhysicsDist (0..)
Используется для объектов с предварительно подготовленной физической анимацией (требует включение свойства Articulated и требует значение ActivatePhysicsThreshold выше 0). Указывает расстояние от оси, после которого части автоматически отделят себя от анимации и в полной мере физикализируются. 0 отключает расстояние отрыва.


Дополнение: Таблица сухого статического трения

Материал-пара μ
Алюминий/алюминий 1.9
Алюминий/сталь 0.61
Кирпич/кирпич 0.65
Алмаз/алмаз 0.1
Стекло/стекло 0.94
Стекло/метал 0.5-0.7
Золото/Золото 2.5-4.0
Лёд/лёд 0.1
Резина/бетон 1.0-4.0
Сталь/сталь 0.74
Дерево/камень 0.4
Дерево/дерево 0.25-0.5
Камень/камень 0.4-0.7