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

Введение в LowLevelPhysics2D API

Примечание: Эта документация посвящена написанию C# скрипты с использованием LowLevelPhysics2D API. Использовать 2D физики в Unity Editor используя компоненты, такие как Rigidbody 2D компонент, см. 2D физика вместо этого.

LowLevelPhysics2D API позволяет создавать и управлять физическими объектами 2D в скриптах C#. API основан на версии 3 физической системы Box2D.

API не взаимодействует или не влияет на встроенные Unity 2D физические компоненты, такие как Rigidbody 2D и Collider 2D. Две системы являются отдельными.

Потребности в ресурсах

API работает на платформах, поддерживающих вычислительные шейдеры.

API совместим с Universal Render Pipeline (URP), High Definition Render Pipeline (HDRP) и встроенным Render Pipeline.

Об API

API имеет следующие преимущества по сравнению со стандартными 2D физическими компонентами, такими как Rigidbody 2D и Collider 2D:

  • Создайте физику в вашей сцене с или без использования GameObjects. Вы можете создать неограниченное количество объектов, и создать партии из нескольких объектов.
  • Производительность выше, потому что Unity хранит данные непрерывно в памяти, а симулирование работает на 64 CPU ядрах одновременно.
  • Система является более детерминированной, так что вы получаете одинаковые результаты каждый раз, когда запускаете моделирование.
  • API поддерживает использование 64 слоев для обнаружения столкновений, вместо стандартных 32.
  • Мост APIs безопасны для потока, поэтому вы можете использовать система работы запускать физический код на нескольких потоках.
  • API возвращает объекты в виде структур, поэтому их можно использовать в Data-Oriented Technology Stack (DOTS) от Unity.

API позволяет выполнять следующие действия, например:

  • Объедините фигуры в свои собственные физические фигуры, например, шестерню с зубцами.
  • Создайте несколько изолированных физических миров в одной сцене, которые работают параллельно.
  • Запустите 2D физику в 3D пространстве, например, чтобы создать 2D мир, который лежит плотно на земле.
  • Используйте несколько потоков для отображения лучей, которые запрашивают пересечения и перекрытия.

Нет встроенных компонентов. Вы создаете физические объекты непосредственно в вашей сцене. Однако вы можете использовать API для выделения наборов свойств в окне Inspector Unity Editor, которые действуют как компоненты. Это позволяет вам настроить свойства аналогично компонентам Rigidbody 2D и Collider 2D.

Отладка рисунка

LowLevelPhysics2D API автоматически рисует отладочную визуализацию физических объектов в представлениях Scene, Game и в сборках для разработки. Вы также можете рисовать свои собственные отладочные фигуры. Дополнительные сведения см. в Рисование отладочной визуализации объектов LowLevelPhysics2D API.

Изображение из демо песочницы хранилища PhysicsCore2D на GitHub. Тысячи крошечных разноцветных капсул разбросаны вокруг области, пересечённой формами 2D, с границами, представленными серыми квадратиками.
Изображение из демо песочницы хранилища PhysicsCore2D на GitHub. Тысячи крошечных разноцветных капсул разбросаны вокруг области, пересечённой формами 2D, с границами, представленными серыми квадратиками.

Примеры проектов

Например, проекты, которые используют LowLevelPhysics2D API, ссылаются на хранилище PhysicsCore2D на GitHub.

Дополнительные ресурсы

  • PhysicsCore2D хранилище на GitHub