Canvas
Описание
Элемент, который может быть использован для экранного отображения.
Элементы на холсте рендируются AFTER Scene рендерингом, либо с подключенной камеры, либо с использованием режима наложения.
using System.Collections; using System.Collections.Generic; using UnityEditor; using UnityEngine; using UnityEngine.UI;
// Create a Canvas that holds a Text GameObject.
public class ExampleClass : MonoBehaviour { void Start() { GameObject myGO; GameObject myText; Canvas myCanvas; Text text; RectTransform rectTransform;
// Canvas myGO = new GameObject(); myGO.name = "TestCanvas"; myGO.AddComponent<Canvas>();
myCanvas = myGO.GetComponent<Canvas>(); myCanvas.renderMode = RenderMode.ScreenSpaceOverlay; myGO.AddComponent<CanvasScaler>(); myGO.AddComponent<GraphicRaycaster>();
// Text myText = new GameObject(); myText.transform.parent = myGO.transform; myText.name = "wibble";
text = myText.AddComponent<Text>(); text.font = (Font)Resources.Load("MyFont"); text.text = "wobble"; text.fontSize = 100;
// Text position rectTransform = text.GetComponent<RectTransform>(); rectTransform.localPosition = new Vector3(0, 0, 0); rectTransform.sizeDelta = new Vector2(400, 200); } }
Свойства
| Свойство | Описание |
|---|---|
| additionalShaderChannels | Получить или установить маску дополнительных каналов шейдера для использования при создании сетки Canvas. |
| cachedSortingLayerValue | Кэшированное значение, рассчитанное на основе SortingLayerID. |
| isRootCanvas | Это корень Canvas? |
| normalizedSortingGridSize | Нормализованный размер сетки, на которую будет разделена рендируемая область. |
| overridePixelPerfect | Позволяет вложенным холстам переопределять настройку pixelPerfect, унаследованную от родительских холстов. |
| overrideSorting | Позволяет вложенным холстам переопределять Canvas.sortingOrder, унаследованный от родительских холстов. |
| pixelPerfect | Принуждает элементы на холсте к выравниванию пикселей. Применяется только тогда, когда Canvas.renderMode установлено на Screen Space. |
| pixelRect | Получить рендеринг rect для Canvas. |
| planeDistance | На каком расстоянии от камеры генерируется Canvas? Он применяется только тогда, когда Canvas.renderMode установлен на RenderMode.ScreenSpaceCamera. |
| referencePixelsPerUnit | Количество пикселей на единицу, которое считается по умолчанию. |
| renderingDisplaySize | Предоставляет пиксельные размеры области отображения, в которой отображается полотно UI. |
| renderMode | Работает ли Canvas в режиме Мира или Оверлей? |
| renderOrder | Порядок отображения, в котором изображение выводится на Scene. (только для чтения) |
| rootCanvas | Возвращает Canvas, ближайший к корню, проверяя каждый родитель и возвращая последний найденный canvas. Если не найдено другого canvas, то canvas возвращается самостоятельно. |
| scaleFactor | Масштабирует всю картинку, обеспечивая ее соответствие размерам экрана. Применяется только тогда, когда Canvas.renderMode установлено на Screen Space. |
| sortingLayerID | Уникальный ID слоя сортировки Canvas'. |
| sortingLayerName | Имя слоя сортировки Canvas'. |
| sortingOrder | Canvas' порядок в слое сортировки. |
| targetDisplay | Для режима Overlay, индекс отображения, на котором будет отображаться UI. |
| updateRectTransformForStandalone | Должен ли размер Canvas обновляться на основе цели отображения при выполнении ручного вызова Camera.Render. |
| vertexColorAlwaysGammaSpace | Должен ли цвет вершины Canvas всегда находиться в гамма-пространстве перед переходом к шейдерам UI в линейном рабочем потоке цветового пространства. |
| worldCamera | Camera используется для определения размера Canvas, когда он находится в Экранном Пространстве — Camera. Также используется как Camera, через который будут отправляться события для Мирового Пространства Canvas. |
Статические методы
| Метод | Описание |
|---|---|
| ForceUpdateCanvases | Принудительное обновление содержимого всех полотен. |
| GetDefaultCanvasMaterial | Возвращает материал по умолчанию, который может быть использован для отображения обычных элементов на Canvas. |
| GetETC1SupportedCanvasMaterial | Получает или генерирует ETC1 Материал. |
Мероприятия
| Мероприятие | Описание |
|---|---|
| preWillRenderCanvases | Событие, вызванное непосредственно перед отображением Canvas. |
| willRenderCanvases | Событие, вызванное до рендеринга Canvas. |
Унаследованные члены 4
Свойства
| Свойство | Описание |
|---|---|
| enabled | True, если это Поведение включено, в противном случае false. |
| isActiveAndEnabled | Проверяет, включён ли компонент, прикреплен ли он к GameObject, который активен в иерархии, и вызван ли OnEnable компонента. |
| gameObject | GameObject, к которому прикреплен данный компонент. Компонент всегда прикрепляется к игровому объекту. |
| tag | Тег этого игрового объекта. |
| transform | Transform прикреплен к этому GameObject. |
| transformHandle | TransformHandle этого GameObject. |
| hideFlags | Должен ли объект быть скрытым, сохраняться с Scene или изменяться пользователем? |
| name | Имя объекта. |
Открытые методы
| Метод | Описание |
|---|---|
| BroadcastMessage | Вызывает метод с именем methodName на каждом MonoBehaviour в этом игровом объекте или любом из его дочерей. |
| CompareTag | Проверяет тег GameObject на соответствие определенному тегу. |
| GetComponent | Получает ссылку на компонент типа T на том же GameObject, что и указанный компонент. |
| GetComponentInChildren | Получает ссылку на компонент типа T на том же GameObject, что и указанный компонент, или на любого ребенка GameObject. |
| GetComponentIndex | Получает индекс компонента на его родительском GameObject. |
| GetComponentInParent | Получает ссылку на компонент типа T на том же GameObject, что и указанный компонент, или на любой родитель GameObject. |
| GetComponents | Получает ссылки на все компоненты типа T на том же GameObject, что и указанный компонент. |
| GetComponentsInChildren | Получает ссылки на все компоненты типа T на том же GameObject, что и указанный компонент, и на любого ребенка GameObject. |
| GetComponentsInParent | Получает ссылки на все компоненты типа T на том же GameObject, что и указанный компонент, и любой родитель GameObject. |
| SendMessage | Вызывает метод с именем methodName на каждом MonoBehaviour в этом игровом объекте. |
| SendMessageUpwards | Вызывает метод с именем methodName на каждом MonoBehaviour в этом игровом объекте и на каждом предшественнике поведения. |
| TryGetComponent | Получает компонент указанного типа, если он существует. |
| GetInstanceID | Получает экземпляр ID объекта. |
| ToString | Возвращает имя объекта. |
Статические методы
| Метод | Описание |
|---|---|
| Destroy | Удаляет GameObject, компонент или ресурс. |
| DestroyImmediate | Немедленно уничтожает указанный объект. Используйте с осторожностью и только в режиме редактирования. |
| DontDestroyOnLoad | Не уничтожать целевой Объект при загрузке нового Scene. |
| FindAnyObjectByType | Получает любой активный загруженный объект типа Type. |
| FindFirstObjectByType | Получает первый активный загруженный объект типа Type. |
| FindObjectsByType | Получает список всех загруженных объектов типа Type. |
| Instantiate | Клонирует исходный объект и возвращает клон. |
| InstantiateAsync | Захватывает моментальный снимок первоначального объекта (который должен быть связан с каким-либо GameObject) и возвращает AsyncInstantiateOperation. |
Операторы
| Оператор | Описание |
|---|---|
| bool | Существует ли объект? |
| оператор!= | Сравнивает, если два объекта ссылаются на разные объекты. |
| оператор == | Сравнение двух ссылок на объекты для определения того, относятся ли они к одному и тому же объекту. |