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

BuoyancyEffector2D.surfaceLevel

Declaration

public float surfaceLevel;

Описание

Определяет произвольную горизонтальную линию, которая представляет собой уровень поверхности жидкости.

Collider2D, используемые эффектором, определяют только общую площадь действия сил плавучести, но не фактический уровень поверхности жидкости. Любые коллайдеры 2D, которые перекрывают эту площадь действия, затем проверяются на уровне поверхности. Уровень поверхности представляет собой линию, которая используется для определения того, погружено ли Collider2D, не погружено или частично погружено. Все ниже этой линии погружено, все выше этой линии не погружено и все, что перекрывает эту линию, частично погружено.

Уровень поверхности определяется как линия, которая простирается до бесконечности вдоль оси X и может быть настроена таким образом, чтобы в любом положении вдоль оси Y i.e поверхность может увеличиваться или уменьшаться вдоль оси Y. В действительности, поверхность может быть поднята или опустина для создания эффектов заполнения или сброса жидкости или просто оставлена в фиксированном положении.

Типичное использование заключается в использовании одного эффектора и связанных с ним Collider2D, скорее всего BoxCollider2D, однако вы не ограничиваетесь этим и можете использовать любое количество или тип Collider2D для определения потенциальной плавучести area(s), но опять же, фактический уровень поверхности определяется этим свойством.

Вращение GameObject не приведет к вращению уровня поверхности, поскольку он определяется как линия пространства-времени. Это значительно упрощает расчеты пересечения и поддерживает высокую производительность.

Масштабы уровня поверхности с Transform в оси Y, так что вы можете установить уровень поверхности относительно коллайдеров эффектора и он сохранит свое относительное положение при масштабировании.

Дополнительные ресурсы: ::Collider2D::usedByEffector.