PureBasic

AddSubEntity()

Синтаксис

Result = AddSubEntity(#Entity , #SubEntity , Type , [OffsetX , OffsetY , OffsetZ [, SizeX , SizeY , SizeZ [, AxisX , AxisY , AxisZ]]])

Описание


Добавляет суб-Сущность (sub-Entity) в качестве дочернего объекта к уже существующей Сущности (Entity).

Параметры

#Entity Номер идентифицирующий Сущность, к которой будет добавлена новая суб-Сущность.
#SubEntity Номер идентифицирующий новую суб-Сущность
Type Тип определяет, как физический движок будет обрабатывать новую суб-Сущность. Это может быть одна из следующих констант:
  #PB_Entity_StaticBody : Тело (body) этой суб-Сущности статично, т.е. её Сетка не может быть анимирована.
                          Этот режим позволяет очень точные столкновения, потому что они сделаны относительно треугольников,
                          которые составляют Сетку (также известный как tri-mesh collision). Также это быстро при столкновении с
                          телом Сущности типа 'кубоид' или 'сферы'. Идеально подходит при использовании Сетки для
                          земли или статичного мира.
#PB_Entity_PlaneBody : 'виртуальная' плоскость размещается вокруг суб-Сущности (с теми же размерами) и используется для управления столкновениями с другими Сущностями.
#PB_Entity_ConeBody : 'виртуальный' конус, полностью охватывающий суб-Сущность (с теми же размерами) и используется для управления столкновениями с другими Сущностями.
#PB_Entity_BoxBody : 'виртуальная' рамка (кубоид), полностью охватывающая суб-Сущность (с теми же размерами) и используется для управления столкновениями с другими Сущностями.
#PB_Entity_SphereBody : 'виртуальная' сфера, полностью охватывающая суб-Сущность и используется для управления столкновениями с другими Сущностями.
#PB_Entity_CylinderBody : 'виртуальный' цилиндр полностью охватывающий суб-Сущность и используется для управления столкновениями с другими Сущностями.
#PB_Entity_CapsuleBody : 'виртуальная' капсула, полностью охватывающая суб-Сущность и используется для управления столкновениями с другими Сущностями.
#PB_Entity_ConvexHullBody : 'виртуальная' сложная форма - полученная из реальной Сетки, размещается вокруг суб-Сущности и используется для управления столкновениями с другими Сущностями. Этот режим медленнее, чем основные формы столкновения.
#PB_Entity_CompoundBody : 'виртуальное' составное Тело устанавливается вокруг суб-Сущности, и это самый быстрый вид произвольной формы. Он определяется облаком вершин, но сформированная форма является наименее выпуклой формой, которая охватывает вершины.
OffsetX, OffsetY, OffsetZ (дополн.) Смещение проекции Тела. (Offset of the translation of the body.)
SizeX, SizeY, SizeZ (дополн.) Размер ограничительной рамки (кубоида) Тела. Это относится только к следующим типам Тел:
  #PB_Entity_BoxBody     : SizeX, SizeY и SizeZ доступны.
  #PB_Entity_SphereBody  : SizeX доступен.
  #PB_Entity_ConeBody    : SizeX и SizeY доступны.
  #PB_Entity_CylinderBody: SizeX и SizeY доступны.
  #PB_Entity_CapsuleBody : SizeX, SizeY и SizeZ доступны.
Если SizeX = -1, тогда система использует ограничительную рамку (BoundingBox).
AxisX, AxisY, AxisZ (дополн.) Ось ориентации Тела. Это относится только к следующим типам Тел:
  #PB_Entity_PlaneBody
  #PB_Entity_CylinderBody
  #PB_Entity_CapsuleBody 

Возвращаемое значение

Возвращает ненулевое значение в случае успеха, в противном случае - 0.

Комментарии

После добавления всех дочерних суб-Сущностей необходимо использовать команду CreateEntityBody() с параметром #PB_Entity_CompoundBody.

См. также

CreateEntity()

Поддерживаемые OS

Все

Entity Index - ApplyEntityForce() ->