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

PhysicsLowLevelSettings2D

класс в UnityEngine.LowLevelPhysics2D

Наследуется от:ScriptableObject

Выполнено в:UnityEngine.Physics2DModule

Описание

Physics LowLevel Settings Asset. Этот ресурс содержит все глобальные параметры физики вместе со значениями по умолчанию для следующих определений:

Свойства

Свойство Описание
bypassLowLevelКонтролирует симуляцию и отображение любого PhysicsWorld. Если true, то автоматическая симуляция или отображение не будет происходить (обходится). Если false, то обычная работа происходит с автоматической симуляцию и отображение. Единственный случай для этого, чтобы быть истинным, это когда низкоуровневая физика не используется вообще, так что это устранит любую накладную симуляцию или отображение, но в большинстве случаев, это должно быть false, что является по умолчанию.
concurrentSimulationsКонтролирует, сколько симуляторов может быть запущено параллельно. Каждый из них запускается на своем рабочем процессе и действует как свой собственный основной поток. В идеале рабочие процессы должны быть свободны для решателя, иначе это может ухудшить производительность решения. Фактическое количество используемых рабочих процессов всегда будет ограничено количеством доступных на текущем устройстве. Если общее количество доступных рабочих процессов меньше 4, то параллельное симулирование не будет происходить, но параллельное решение с использованием рабочих процессов будет происходить. Это не следует путать с количеством рабочих процессов, используемых при решении симулятора. См. PhysicsWorldDefinition.simulationWorkers.
drawInBuildУправляет, может ли использоваться отладочный ящик в сборке разработки игрока.
lengthUnitsPerMeter Внутреннее количество единиц длины на метр. Физическая система строит все единицы длины на метрах, но вашему проекту могут понадобиться другие единицы. Это значение можно изменить, но делать это следует до любых других обращений к физической системе и только один раз. Изменение значения после создания хотя бы одного физического объекта может привести к серьёзной нестабильности симуляции. По сути в системе есть внутренние допуски: например, насколько близко должны находиться две формы, чтобы считаться соприкасающимися, или насколько близки две вершины оболочки, чтобы считать их одной точкой. Скажем, внутренне используется значение 5 мм (0.005 метра), подобранное так, чтобы хорошо работать с объектами игрового масштаба, измеряемыми в метрах. Если вы решите работать в другой системе единиц (например, в пикселях), то 0.005 пикселя — неудачное значение для этой константы: оно слишком мало и приведёт к численным проблемам, особенно вдали от начала координат. Вместо этого определите, сколько примерно пикселей приходится на метр. Например, если вы хотите 32 пикселя на метр, задайте lengthUnitsPerMeter равным 32.0f. Значение, скажем, 32.05 привело бы к тому, что 5 мм превратились бы в 0.16 метра — более разумную величину для определения того, соприкасаются ли формы и не слишком ли близки вершины оболочки. Хорошее эмпирическое правило — передавать в эту функцию высоту персонажа игрока в пикселях: если персонаж имеет высоту 32 пикселя, передайте 32. После этого можно смело передавать все длины в физическую систему в пикселях. Все длины, возвращаемые физической системой, тоже естественным образом будут в пикселях, поскольку внутри она ничего не масштабирует; при этом подбор подходящих значений гравитации, плотности и сил теперь на вас.
physicsBodyDefinitionПолучить/Установить PhysicsBodyDefinition.
physicsChainDefinitionПолучить/Установить PhysicsChainDefinition.
physicsLayerNamesНабор из 64 имен "уровней", связанных с каждым битом в PhysicsMask, когда используется для контактов и запросов.
physicsShapeDefinitionПолучить/Установить PhysicsShapeDefinition.
physicsWorldDefinitionПолучить/Установить PhysicsWorldDefinition.
useFullLayersУправляет тем, используются ли полные 64-битные слои на основе PhysicsLowLevelSettings2D.physicsLayerNames или, в противном случае, стандартные 32-битные слои на основе UnityEngine.LayerMask. Если назначен ассет PhysicsLowLevelSettings2D, то будут использоваться полные слои (PhysicsLowLevelSettings2D.physicsLayerNames), если также активен PhysicsLowLevelSettings2D.useFullLayers. Если ассет PhysicsLowLevelSettings2D не назначен, то будут использоваться глобальные слои (см. UnityEngine.LayerMask).
Унаследованные члены 5

Свойства

СвойствоОписание
hideFlagsДолжен ли объект быть скрытым, сохраняться с Scene или изменяться пользователем?
nameИмя объекта.

Открытые методы

МетодОписание
GetInstanceIDПолучает экземпляр ID объекта.
ToStringВозвращает имя объекта.

Статические методы

МетодОписание
DestroyУдаляет GameObject, компонент или ресурс.
DestroyImmediateНемедленно уничтожает указанный объект. Используйте с осторожностью и только в режиме редактирования.
DontDestroyOnLoadНе уничтожать целевой Объект при загрузке нового Scene.
FindAnyObjectByTypeПолучает любой активный загруженный объект типа Type.
FindFirstObjectByTypeПолучает первый активный загруженный объект типа Type.
FindObjectsByTypeПолучает список всех загруженных объектов типа Type.
InstantiateКлонирует исходный объект и возвращает клон.
InstantiateAsyncЗахватывает моментальный снимок первоначального объекта (который должен быть связан с каким-либо GameObject) и возвращает AsyncInstantiateOperation.
CreateInstanceСоздает экземпляр скриптового объекта.

Операторы

ОператорОписание
boolСуществует ли объект?
оператор!=Сравнивает, если два объекта ссылаются на разные объекты.
оператор ==Сравнение двух ссылок на объекты для определения того, относятся ли они к одному и тому же объекту.

Сообщения

СообщениеОписание
AwakeВызывается при создании экземпляра ScriptableObject.
OnDestroyЭта функция вызывается, когда скриптовый объект будет уничтожен.
OnDisableЭта функция вызывается, когда скриптовый объект выходит за пределы области действия.
OnEnableЭта функция вызывается при загрузке объекта.
OnValidateФункция только для редактора, которую вызывает Unity при загрузке скрипта или изменении значения в Inspector.
ResetСброс значений по умолчанию.