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

PolygonCollider2D.CreateFromSprite

Declaration

public bool CreateFromSprite(Sprite sprite, float detail = 0.25f, byte alphaTolerance = 200, bool holeDetection = true, bool usePhysicsShapes = true);

Параметры

Параметр Описание
спрайт Спрайт для извлечения данных о форме полигона.
деталь Деталь, используемая при тесселлировании контура спрайта, в диапазоне [0, 1]. Используется только в том случае, если sprite уже не имеет собственного PhysicsShape outline(s) или usePhysicsShapes false. Это значение имеет то же значение, что и свойство с аналогичным названием в Редакторе спрайтов.
alphaTolerance Альфа-толерантность, используемая для отделения спрайта от его фона, в диапазоне [0, 255]. Это используется только в том случае, если sprite уже не имеет собственного PhysicsShape outline(s) или usePhysicsShapes false. Это значение имеет то же значение, что и свойство с аналогичным названием в Редакторе спрайтов.
holeDetection Определяет, нужно ли обнаруживать внутренние отверстия при построении контуров спрайта. Используется только в том случае, если sprite уже не имеет собственного PhysicsShape outline(s) или usePhysicsShapes false. Это значение имеет то же значение, что и свойство с аналогичным названием в редакторе Sprite.
usePhysicsShapes Выбирает, должен ли контур использовать PhysicsShape outline(s), определенные в sprite. Если true, они используются (если доступны), но если false, то они никогда не используются, даже если доступны.

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

логическое Возвращает true, если выбранный спрайт привел к созданию полигональных форм. Возвращает false, если нет, в этом случае Collider будет установлен на примитивную форму по умолчанию.

Описание

Создание многоугольных фигур с помощью выбранного спрайта.

Если выбранный sprite уже имеет свой собственный PhysicShape(s), определенный в редакторе Sprite, то этот контур будет тесселлирован в полигональные формы, которые будут использоваться здесь.

Если выбранный sprite не имеет своего собственного PhysicsShape(s), то новый контур будет создан с использованием дополнительных аргументов. Это занимает дополнительное время и во всех случаях предпочтительнее, чтобы каждый Sprite имел свой собственный PhysicsShape(s) определенный.

NOTE: Если PhysicsShape(s) не доступны в Sprite и дополнительные аргументы используются в сборке проигрывателя, то Sprite.texture должны иметь разрешение на чтение/запись в импортере, так что это readable.

Дополнительные ресурсы: Sprite, Sprite.GetPhysicsShapeCount, Sprite.GetPhysicsShape и Sprite.GetPhysicsShapePointCount.