【UGUI源码解析】8、Graphic

一、简介

Graphic主要是用来控制图片的显示,设置mesh的顶点和uv数据,提供给VertexHelper和CanvasRenderer进行mesh绘制。所以有时候制作一些角色头顶的血条使用动态创建mesh的方法进行绘制。

Graphic是一个抽象类,是MaskableGraphic(可遮罩图像)的基类,而MaskableGraphic是RawImage、Image和Text的基类。

二、功能

1、添加的特性

    [DisallowMultipleComponent]//一个对象只能挂载一个Graphic类组件,即使是继承Graphic也是不行
    [RequireComponent(typeof(CanvasRenderer))]//需要CanvasRender组件,用来绘制mesh
    [RequireComponent(typeof(RectTransform))]
    [ExecuteInEditMode]//编辑器模式下也运行[ExecuteAlways]类似

Unity支持通过[ExecuteInEditMode][ExecuteAlways]两种参数使脚本在Play Mode以外的状态下被执行,[ExecuteEditMode]支持脚本在Edit Mode下运行,[ExecuteAlways]是在Unity2018.3及以后的版本新加入的功能,能够支持脚本一直运行。(ps:由于[ExecuteInEditMode] 并没有考虑Prefab Mode,严格意义上讲Prefab Mode也属于Edit Mode,所以这个功能会逐渐被Unity弃用,最后应该会被[ExecuteAlways]所替代)

2、重写UIB

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值