自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 unity UGUI源码分析(4)Text与TextMeshPro

这一篇博客用于分析Text的内容的更新机制,并分析text mesh pro。首先我们分析Text的文字是如何渲染出来的。PupulateWithErrors方法会根据字符串生成顶点数据。其实Text会根据所给定的字符串生成相关的图集,然后对图集进行采样就可以渲染出文字了。由于TextGenerator没有开源,我们从unity UI优化文档上可以找到相关步骤。protected override void OnPopulateMesh(VertexHelper toFill){.

2022-04-30 17:41:31 6576 1

原创 untiy UGUI源码分析(3)Text

直接分析Graphic源码不太直观 ,我们从顶层分析Text控件的运作机制这样可以知道Graphic的运作机制了,首先Text继承关系如下public class Text : MaskableGraphic, ILayoutElementpublic abstract class MaskableGraphic : Graphic, IClippable, IMaskable, IMaterialModifier我们需要分析Text控件何时会刷新,可以肯定地是Graphic使用了脏标记..

2022-04-29 00:44:16 484

原创 unity UGUI源码分析(2)射线检测

在EventSystem中提到使用射线检测对当前鼠标停放位置的UI进行检测,那么射线检测具体是怎么做的呢?我们继续看源码,在第一篇关于EventSystem的文章中讲过StandaloneInputModule 中通过GetMousePointerEventData方法确定当前选择的GameObject,而在GetMousePointerEventData通过射线检测确定选择的GameObject。protected virtual MouseState GetMousePointerEventDat

2022-04-26 15:37:31 1136

原创 untiy UGUI源码分析(2)射线检测

在EventSystem中提到使用射线检测对当前鼠标停放位置的UI进行检测,那么射线检测具体是怎么做的呢?我们继续看源码,在第一篇关于EventSystem的文章中讲过StandaloneInputModule 中通过GetMousePointerEventData方法确定当前选择的GameObject,而在GetMousePointerEventData通过射线检测确定选择的GameObject。protected virtual MouseState GetMousePointerEventD

2022-04-26 15:30:17 630

原创 unity UGUI 源码分析(1) EventSystem

顶层上来看EventSystem继承于UIBehaviour,UIBehaviour继承于Monobehavior所有包含了Update等方法。Update方法首先更新输入模块状态,然后选定当前可用的输入模块,最后调用输入模块的Process方法。protected virtual void Update(){ if (current != this) return; TickModules();//该方法用于更新输入模块的状态,例如鼠标的位置 bool ch

2022-04-25 17:45:10 307

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除