Unity 6.3
0 онлайн 3 гостей 3 в системе
Вход

Справочник по окну Physics Debug

С помощью окна Physics Debug настраивают и формируют визуальные представления работы 3D-физики в сцене. Эти визуализации отображаются в Представление Scene.

Чтобы открыть окно Physics Debug в Unity Editor, перейдите в Window > Analysis > Physics Debugger.

Physics Debugger вставляет Панель отладки физики в окне Scene и открывает окно Physics Debug со следующими вкладками:

  • Info: отслеживание сведений о Rigidbody и Articulation Body. Здесь же находится визуализация центра масс и тензора инерции.
  • Filtering: определяет, какие физические объекты следует показывать.
  • Rendering: настройки, определяющие, как Unity отрисовывает и отображает визуализацию физики.
  • Contacts: выберите, нужно ли визуализировать контакты.
  • Queries: выберите, нужно ли визуализировать запросы.

Чтобы вернуть окно Physics Debug к настройкам по умолчанию, выберите Reset.

Подробнее о повышении производительности физики в проекте см. в документации по Physics Profiler.

Панель отладки физики

Когда в Unity открыто окно Physics Debug, в окне Scene появляется панель Physics Debug. По умолчанию она располагается в правом нижнем углу окна Scene, но её можно перетащить в другое место.

Property Description
Collision Geometry Enable Collision Geometry чтобы визуализировать сведения о столкновениях в окне Scene. Отключите Collision Geometry чтобы скрыть сведения о столкновениях в окне Scene.
Mouse Select Enable Mouse Select чтобы включить подсветку при наведении и выбор мышью. Это удобно, когда крупные GameObject заслоняют друг друга в визуализации.

Info

The Info вкладка содержит данные о выбранном Rigidbody or ArticulationBody GameObject. По этим данным можно наблюдать за поведением физического тела. Изменять значения свойств на этой вкладке нельзя. Их можно менять из скрипта, но это не рекомендуется: в большинстве случаев вместо этого следует прикладывать силы через физическую систему.

Чтобы конкретный GameObject постоянно оставался закреплённым в Info вкладку, включите Lock для этого GameObject. Закрепить можно сколько угодно объектов. Используйте Количество элементов в строке свойство, чтобы расположить Info вкладке так, как вам удобнее ориентироваться.

На вкладке Info всегда отображаются следующие свойства.

Property Description
Количество элементов в строке Задайте, сколько выделенных GameObject отображать по горизонтали в верхней строке Info tab.

По умолчанию, если вы выделяете или закрепляете несколько GameObject, Unity показывает их все по вертикали. Однако их можно расположить и горизонтально. Используйте Количество элементов в строке чтобы задать, сколько GameObject отображать рядом друг с другом в одной горизонтальной строке — максимум 10.

Если число выделенных или закреплённых GameObject превышает это значение, недавно выделенные объекты переносятся на новую строку под первой.

GameObject всегда отображаются в Info вкладке в порядке выделения. Значение этого свойства по умолчанию — 1.
Отслеживаемые объекты Показывает общее количество уникальных GameObject, которые сейчас присутствуют в Info вкладке. Сюда входят выделенные и закреплённые GameObject. Дубликаты не учитываются.
Очистить заблокированные объекты Select Очистить заблокированные объекты чтобы отключить Lock для всех GameObject. Это убирает любые GameObject из Info вкладке, которые ещё не выделены в окне Hierarchy.

The Info вкладка показывает следующие свойства, когда в окне Hierarchy выбран GameObject с физическим телом (то есть Rigidbody or an ArticulationBody).

Property Description
GameObject Показывает имя выделенного или закреплённого GameObject, к которому относятся следующие свойства.
Draw Gizmos for Выберите, для какого физического свойства Physics Debug должен показывать гизмо.
- Center of Mass Показывать гизмо, обозначающее положение глобального центра масс физического тела (см. World Center of Mass).
- Inertia Tensor Показывать гизмо, обозначающее поворот и масштаб тензора инерции физического тела (см. Inertia Tensor).
Lock Enable Lock чтобы сохранить GameObject в Info вкладке, даже если он не выбран в окне Hierarchy.
Speed Скорость движения физического тела, измеряемая в метрах в секунду (м/с).
Velocity Скорость физического тела по каждой оси, измеряемая в метрах в секунду (м/с).
Angular Velocity Скорость физического тела по каждой оси, измеряемая в градусах в секунду.
Inertia Tensor Тензор инерции этого физического тела. Как и масса, тензор инерции определяет, сколько силы или момента нужно, чтобы привести тело в движение; но если масса влияет на линейное движение, то тензор инерции — на вращательное. Чем выше Inertia Tensor значение, тем больший момент требуется, чтобы физическое тело повернулось вокруг своей оси.
Inertia Tensor Rotation Поворот тензора инерции. По умолчанию Unity вычисляет его автоматически на основе всех коллайдеров, прикреплённых к физическому телу.
Local Center of Mass Локальное положение центра масс физического тела по каждой оси. Чтобы изменить центр масс из скрипта, используйте centerOfMass. Unity также может изменить это значение в зависимости от расположения коллайдера.
World Center of Mass Глобальное положение центра масс физического тела по каждой оси. Чтобы изменить центр масс из скрипта, используйте worldCenterOfMass. Unity также может изменить это значение в зависимости от расположения коллайдера.
Sleep State Состояние сна физического тела. Отображает Awake если физическое тело активно и участвует в расчётах физики. Отображает Asleep если физическое тело спит и не участвует в расчётах физики.
Sleep Threshold Порог энергии для физического тела, ниже которого физический движок перестаёт включать его в обновления физики. По умолчанию это Sleep Threshold значение, заданное в глобальные настройки Physics.
Max Linear Velocity Максимальная линейная скорость, которой может достичь физическое тело; задаётся через maxLinearVelocity.
Max Angular Velocity Максимальная скорость вращения, которой может достичь физическое тело; задаётся через maxAngularVelocity.
Solver Iterations Количество итераций, которые решателю физической системы нужно выполнить для этого физического тела.
Solver Velocity Iteration Количество итераций по скорости, которые решателю физической системы нужно выполнить для этого физического тела. Они приближают скорость расхождения перекрывающихся GameObject к правильному значению с учётом упругости контакта.
Body Index Индекс Articulation Body в дереве. Это свойство отображается только для Articulation Body.

Filtering

The Filtering вкладка содержит свойства, задающие, какие элементы физики отображаются в визуализации Physics Debug.

Property Description
Show Physics Scene Выберите, какие физические сцены включить в визуализацию, если у вас есть несколько физических сцен загружено одновременно.
Show Unity Scene Выберите, какие сцены Unity включить в визуализацию, если у вас есть несколько сцен загружено одновременно.
Show Layers Выберите, какой Layers для отображения в визуализации.
Show Static Colliders Enable Show Static Colliders чтобы отображать визуализацию для коллайдеров без компонента Rigidbody. Отключите Show Static Colliders чтобы убрать визуализацию коллайдеров без компонента Rigidbody.
Show Triggers Enable Show Triggers чтобы отображать визуализацию для коллайдеров, являющихся триггерами. Отключите Show Triggers чтобы убрать визуализацию коллайдеров, являющихся триггерами.
Show Rigidbodies Enable Show Rigidbodies чтобы отображать визуализацию для Rigidbody components. Disable Show Rigidbodies чтобы убрать визуализацию компонентов Rigidbody.
Show Kinematic Bodies Enable Show Kinematic Bodies чтобы отображать визуализацию для коллайдеров с кинематическими компонентами Rigidbody. Отключите Show Kinematic Bodies чтобы убрать визуализацию коллайдеров с кинематическими компонентами Rigidbody.
Show Articulation Bodies Enable Show Articulation Bodies чтобы отображать визуализацию для ArticulationBody components. Disable Show Articulation Bodies чтобы убрать визуализацию компонентов ArticulationBody.
Show Sleeping Bodies Enable Show Sleeping Bodies чтобы отображать визуализацию для коллайдеров со спящими компонентами Rigidbody. Отключите Show Sleeping Bodies чтобы убрать визуализацию коллайдеров со спящими компонентами Rigidbody.
Collider Types Эти параметры позволяют показывать в визуализации физики коллайдеры определённых типов.
- Show BoxColliders Enable Show BoxColliders чтобы отображать визуализацию для Box Colliders. Disable Show BoxColliders чтобы убрать визуализацию Box Collider.
- Show SphereColliders Enable Show SphereColliders чтобы отображать визуализацию для Sphere Colliders. Disable Show SphereColliders чтобы убрать визуализацию Sphere Collider.
- Show CapsuleColliders Enable Show CapsuleColliders чтобы отображать визуализацию для Capsule Colliders. Disable Show CapsuleColliders чтобы убрать визуализацию Capsule Collider.
- Показывать MeshCollider (выпуклые) Enable Показывать MeshCollider (выпуклые) чтобы отображать визуализацию для Mesh Colliders у которых Is Convex свойство включено. Отключите Показывать MeshCollider (выпуклые) чтобы убрать визуализацию Mesh Collider, у которых Is Convex property enabled.
- Показывать MeshCollider (вогнутые) Enable Показывать MeshCollider (вогнутые) чтобы отображать визуализацию для Mesh Colliders у которых Is Convex свойство отключено. Отключите Показывать MeshCollider (вогнутые) чтобы убрать визуализацию Mesh Collider, у которых Is Convex property disabled.
- Show TerrainColliders Enable Show TerrainColliders чтобы отображать визуализацию для Terrain Colliders. Disable Show TerrainColliders чтобы убрать визуализацию Terrain Collider.
- Show None Select Show None чтобы сбросить все критерии фильтрации и убрать из визуализации все коллайдеры.
- Show All Select Show All чтобы включить все фильтры и отображать визуализацию для всех коллайдеров.

Rendering

The Rendering вкладка содержит свойства, задающие, как Unity отрисовывает и отображает визуализацию физики.

Property Description
Static Colliders Выберите цвет, которым в визуализации будут обозначены статические коллайдеры (коллайдеры без компонента Rigidbody).
Triggers Выберите цвет, которым в визуализации будут обозначены коллайдеры, одновременно являющиеся триггерами.
Rigidbodies Выберите цвет, которым будет обозначаться Rigidbody компоненты в визуализации.
Kinematic Bodies Выберите цвет, которым в визуализации будут обозначены кинематические компоненты Rigidbody. Физическая система такими компонентами не управляет.
Articulation Bodies Выберите цвет, которым будет обозначаться Компоненты Articulation Body в визуализации.
Sleeping Bodies Выберите цвет, которым в визуализации будут обозначены спящие компоненты Rigidbody (те, что сейчас не участвуют в работе физического движка).
Variation Задайте, насколько выбранные цвета смешиваются со случайным цветом. Это помогает визуально различать коллайдеры по цвету и видеть структуру GameObject. Значение лежит в диапазоне от 0 до 1; по умолчанию — 0.15.
Transparency Задайте прозрачность отрисовываемой геометрии столкновений в визуализации. Значение лежит в диапазоне от 0 до 1; по умолчанию — 0.5.
Force Overdraw Enable Force Overdraw чтобы геометрия коллайдеров отображалась в визуализации поверх геометрии рендеринга. Это удобно, когда геометрия рендеринга заслоняет визуализацию коллайдеров. Отключите Force Overdraw чтобы отображать геометрию коллайдеров так, как она выглядит относительно камеры.
View Distance Задайте дальность видимости визуализации. По умолчанию — 1000. Значение измеряется в единицах, которые в Unity по умолчанию принимаются равными 1 м.
Terrain Tiles Max Задайте максимальное количество Terrain тайлов в визуализации. По умолчанию — 60.
Настройки гизмо Настройте гизмо Physics Debug, которые Info tab controls.
- Постоянный размер на экране Enable Постоянный размер на экране чтобы гизмо Physics Debug выглядели на экране одинакового размера на любом расстоянии от камеры. Отключите Постоянный размер на экране чтобы размер гизмо менялся вместе с перспективой.
- Масштаб тензора инерции Задайте значение, на которое умножается вектор 3 тензора инерции. Это удобно, когда тензор инерции особенно велик — например, если нужно рассмотреть и оценить соотношение компонентов вектора.

Contacts

The Contacts вкладка содержит свойства, задающие, какие данные о контактах отображаются в визуализации Physics Debug и какими цветами обозначаются разные типы контактов.

Property Description
Show Contacts Enable Show Contacts чтобы отображать визуализацию контактов.
- Show All Contacts Enable Show All Contacts чтобы в визуализации Physics Debug отображались все данные о контактах столкновений. Отключите Show All Contacts чтобы ограничить объём данных о контактах, отображаемых в визуализации Physics Debug.
When Show All Contacts отключён, в визуализации отображаются только следующие контакты:
- Коллайдеры с MonoBehaviour скрипты, получающие сообщения от OnCollisionEnter, OnCollisionSay, or OnCollisionExit
— Коллайдеры, у которых providesContact свойство равно true.
- Show Impulse Enable Show Impulse чтобы в визуализации отображалась стрелка, обозначающая импульс в точке контакта. Отключите Show Impulse чтобы убрать визуализацию импульса.
- Show Separation Enable Show Separation чтобы в визуализации отображались отрезок и диск, обозначающие зазор в точке контакта. Отключите Show Separation чтобы убрать визуализацию зазора.
- Использовать настройки фильтрации Enable Использовать настройки фильтрации чтобы использовать настройки из Filtering вкладку, чтобы отфильтровать визуализацию входящих контактов. Отключите Использовать настройки фильтрации чтобы использовать только настройки из Contacts tab.
Цвета контактов Выберите цвета, которыми Unity будет обозначать данные о контактах столкновений в визуализации.
Использовать разные цвета Enable Использовать разные цвета чтобы для каждой контактирующей пары коллайдеров использовались случайные цвета. Отключите Использовать разные цвета чтобы использовать три цвета, заданные в следующих свойствах (Цвет контакта, Цвет разделения контакта, and Цвет импульса контакта).
Цвет контакта Выберите цвет для обозначения контакта. В визуализации он показан стрелкой, которая начинается в точке контакта и направлена вдоль нормали контакта.
Цвет разделения контакта Выберите цвет для обозначения зазора контакта. В визуализации он показан отрезком и диском.
Цвет импульса контакта Выберите цвет для обозначения импульса контакта. В визуализации он показан стрелкой, направленной вдоль нормали, длина которой равна величине импульса.

Queries

The Queries вкладка содержит свойства, задающие, какие типы запросов отображаются в визуализации Physics Debug и как именно. О запросах PhysX см. документацию NVIDIA PhysX по теме Scene Queries and Geometry Queries.

Property Description
Показывать запросы Enable Показывать запросы чтобы отображать визуализацию физических запросов.
Цвет запроса Выберите цвет, которым Unity будет обозначать физические запросы в визуализации.
Показывать фигуры Выберите, какие формы запросов показывать в визуализации Physics Debug. Включите форму, чтобы запросы такой формы отображались в визуализации; отключите — чтобы убрать их оттуда.

Доступные варианты:
- Box-shape queries
- Capsule-shape queries
- Collider-shape queries
- Ray-shape queries
Показывать типы Выберите, какие типы запросов показывать в визуализации. Включите тип, чтобы запросы этого типа отображались в визуализации; отключите — чтобы убрать их оттуда. О типах запросов PhysX см. документацию NVIDIA PhysX по теме Geometry Queries.

Доступные варианты:
- Overlap queries
- Check queries
- Cast queries
Max Queries Задайте максимальное количество запросов, которые Physics Debug может визуализировать одновременно. По умолчанию — 100.
Show None Select Show None чтобы сбросить все критерии фильтрации и убрать из визуализации все формы и типы запросов.
Show All Select Show All чтобы включить все фильтры и показать в визуализации все формы и типы запросов.