上一章介绍了GUI的基础概念:什么是GUI、GUI的两种模式(immediate mode, retained mode)。本章详细介绍如何使用基于retained mode 的GUI编辑系统。
1. 创建Canvas
Canvas是一切GUI元件的基础,所有的GUI都必须附在Canvas上(Unity官方原文是All UI elements must be children of a GameObject that has a Canvas component attached.)。
Canvas有三种渲染模式
-
Screen Space - Overlay
所有的UI元件都渲染在屏幕视野的最顶层(没有相机时,Canvas上的UI也能照常渲染)。无论相机对准何处、摄影角度如何、与Canvas的距离有多远,UI的大小样貌会一直保持不变(因为与相机不相关,without reference with camera),屏幕大小、分辨率改变了,UI也会跟着自动调整适应(automaitcally rescale to fit)。特点:
(1)UI大小不会受相机的影响,屏幕大小、分辨率改变时UI能自动缩放以适应。
(2)UI不会被游戏内物体遮挡 -
Sreen Space - Camera
UI元件大小不会因相机远近、拍摄位置、角度而改变(原理是Canvas会随着相机的变化而相应调整,比如相机远离Canvas时,Canvas则自动缩短与相机的距离,相机改变角