Renderer.bounds
Declaration
public Bounds bounds;Описание
Ограничительная рамка рендерера в мировом пространстве.
Это осево выравниваемая граничная коробка, полностью окружающая объект в мировом пространстве.
Использование bounds удобно делать грубые приближения о местоположении объекта и его размерах. Например, center свойство часто является более точным приближением к центру объекта, чем Transform.position, особенно если объект не симметричен.
Mesh.bounds и localBounds похожи, но они возвращают границы в локальном пространстве.
Стандартный ограничивающий объём можно переопределить, задав собственный ограничивающий объём в мировом пространстве. Это особенно полезно, когда рендерер использует шейдер с собственными деформациями вершин и стандартный объём оказывается неточным.
Когда вы задаёте собственные мировые границы, ограничивающий объём рендерера перестаёт автоматически следовать за изменениями компонента Transform. Если задано переопределение ограничивающего объёма в локальном пространстве (localBounds) активен в то же время, он игнорируется и используются настраиваемые границы пространства мира. Использование ResetBounds чтобы убрать переопределение границ. Учтите, что значение пользовательских мировых границ не сохраняется в сценах и префабах, и во время выполнения его нужно задавать из скрипта.
using UnityEngine;
public class DrawRendererBounds : MonoBehaviour { // Draws a wireframe box around the selected object, // indicating world space bounding volume. public void OnDrawGizmosSelected() { var r = GetComponent<Renderer>(); if (r == null) return; var bounds = r.bounds; Gizmos.matrix = Matrix4x4.identity; Gizmos.color = Color.blue; Gizmos.DrawWireCube(bounds.center, bounds.extents * 2); } }
Дополнительные ресурсы: ,ResetBounds,, ,localBounds,, ,Bounds,, ,Mesh.bounds,.