RawImage是显示图像的组件,继承自MaskableGraphic,可以显示任何类型的贴图
大多应用于小地图或需要根据UV坐标实现动图的效果
因为RawImage显示的图片类型是贴图类型,所以不能打图集,导致每一张RawImage渲染的图像都需要增加一个DrawCall
——mainTexture
如果mainTexture不为空则使用mainTexture作为贴图,如果mainTexture为空则使用材质材质上的贴图,如果材质上的贴图为空则使用Texture2D.whiteTexture,最终会将mainTexture交给Canvas进行绘制
——uvRect
根据uv参数设置图像的显示范围
多出来的空缺部分,会根据贴图Import Settings中的Wrap Mode决定
1.Repeat:重复
2.Clamp:用最后的像素填充(最后像素为透明,则也用透明填充)
3.Mirror:以边界为中心线镜像
4.Mirror Once:只镜像一次,剩下的空缺的部分用最后的像素填充
5.Per-axis:分别设置uv的Wrap Mode
——SetNativeSize
设置rectTransform为图片的原尺寸
——OnPopulateMesh
重写了OnPopulateMesh方法修改元素的顶点、颜色、UV等信息存到m_VertexHelper中,最终会将m_VertexHelper传入Mesh并交给Canvas进行绘制
UGUI源码解析——Graphic