可用于屏幕渲染的元素。
画布上的元素在场景渲染之后渲染,无论是通过附加的相机还是使用叠加模式。
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 | 获取或设置创建画布网格时要使用的额外着色器通道的掩码。 |
| cachedSortingLayerValue | 基于 SortingLayerID 的缓存计算值。 |
| isRootCanvas | 这是根画布吗? |
| normalizedSortingGridSize | 画布将渲染区域分成的小网格的归一化大小。 |
| overridePixelPerfect | 允许嵌套画布覆盖从父画布继承的 pixelPerfect 设置。 |
| overrideSorting | 允许嵌套画布覆盖父画布的 Canvas.sortingOrder。 |
| pixelPerfect | 强制画布中元素的像素对齐。它仅在 Canvas.renderMode 设置为 Screen Space 时适用。 |
| pixelRect | 获取画布的渲染矩形。 |
| planeDistance | 画布距离相机多远?它仅在 Canvas.renderMode 设置为 RenderMode.ScreenSpaceCamera 时适用。 |
| referencePixelsPerUnit | 被认为是默认值的每个单位的像素数。 |
| renderingDisplaySize | 根据选定的渲染模式和目标显示返回画布显示大小。 |
| renderMode | 画布是处于世界模式还是叠加模式? |
| renderOrder | 画布被发射到场景中的渲染顺序。(只读) |
| rootCanvas | 通过检查每个父项并返回找到的最后一个画布,返回最靠近根的画布。如果没有找到其他画布,则画布将返回自身。 |
| scaleFactor | 缩放整个画布,确保它适合屏幕。它仅在 Canvas.renderMode 设置为 Screen Space 时适用。 |
| sortingLayerID | 画布排序层的唯一 ID。 |
| sortingLayerName | 画布排序层的名称。 |
| sortingOrder | 画布在排序层中的顺序。 |
| targetDisplay | 对于叠加模式,UI 画布将显示在哪个显示索引上。 |
| updateRectTransformForStandalone | 当执行手动 Camera.Render 调用时,画布大小是否应该根据渲染目标进行更新。 |
| vertexColorAlwaysGammaSpace | 在传递到线性颜色空间工作流程中的 UI 着色器之前,画布顶点颜色是否始终处于伽马空间。 |
| worldCamera | 在 Screen Space - Camera 中用于调整画布大小的相机。还用作世界空间画布将发送事件的相机。 |
| ForceUpdateCanvases | 强制所有画布更新其内容。 |
| GetDefaultCanvasMaterial | 返回可用于在画布上渲染普通元素的默认材质。 |
| GetETC1SupportedCanvasMaterial | 获取或生成 ETC1 材质。 |
| preWillRenderCanvases | 在画布渲染发生之前调用的事件。 |
| willRenderCanvases | 在画布渲染发生之前调用的事件。 |
| enabled | 启用的行为将被更新,禁用的行为将不被更新。 |
| isActiveAndEnabled | 报告游戏对象及其关联的行为是否处于活动状态并已启用。 |
| gameObject | 此组件附加到的游戏对象。组件始终附加到游戏对象。 |
| tag | 此游戏对象的标签。 |
| transform | 附加到此游戏对象的 Transform。 |
| hideFlags | 对象是否应隐藏,与场景一起保存或可由用户修改? |
| name | 对象的名称。 |
| BroadcastMessage | 调用此游戏对象或其任何子项中的每个 MonoBehaviour 上名为 methodName 的方法。 |
| CompareTag | 将游戏对象的标签与定义的标签进行比较。 |
| GetComponent | 获取与指定组件位于同一个游戏对象上的类型为 T 的组件的引用。 |
| GetComponentInChildren | 获取与指定组件位于同一个游戏对象上的类型为 T 的组件的引用,或获取该游戏对象的任何子项。 |
| GetComponentIndex | 获取组件在其父游戏对象上的索引。 |
| GetComponentInParent | 获取与指定组件位于同一个游戏对象上的类型为 T 的组件的引用,或获取该游戏对象的任何父项。 |
| GetComponents | 获取与指定组件位于同一个游戏对象上的所有类型为 T 的组件的引用。 |
| GetComponentsInChildren | 获取与指定组件位于同一个游戏对象上的所有类型为 T 的组件的引用,以及该游戏对象的任何子项。 |
| GetComponentsInParent | 获取与指定组件位于同一个游戏对象上的所有类型为 T 的组件的引用,以及该游戏对象的任何父项。 |
| SendMessage | 调用此游戏对象中的每个 MonoBehaviour 上名为 methodName 的方法。 |
| SendMessageUpwards | 调用此游戏对象中的每个 MonoBehaviour 上名为 methodName 的方法,以及行为的每个祖先。 |
| TryGetComponent | 获取指定类型的组件(如果存在)。 |
| GetInstanceID | 获取对象的实例 ID。 |
| ToString | 返回对象的名称。 |
| Destroy | 删除游戏对象、组件或资产。 |
| DestroyImmediate | 立即销毁对象 obj。强烈建议使用 Destroy 代替。 |
| DontDestroyOnLoad | 加载新场景时不要销毁目标对象。 |
| FindAnyObjectByType | 检索类型为 type 的任何活动加载对象。 |
| FindFirstObjectByType | 检索类型为 type 的第一个活动加载对象。 |
| FindObjectsByType | 检索所有加载的类型为 type 的对象的列表。 |
| Instantiate | 克隆对象 original 并返回克隆。 |
| InstantiateAsync | 捕获原始对象(必须与某个游戏对象相关)的快照,并返回 AsyncInstantiateOperation。 |
| bool | 对象是否存在? |
| operator != | 比较两个对象是否引用不同的对象。 |
| operator == | 比较两个对象引用以查看它们是否引用同一个对象。 |