随笔分类 -  UGUI

游戏开发中遇到的UI问题
摘要:本文主要浅谈一下UGUI的底层渲染结构以及Canvas渲染模式的概念,关于合批的流程解析建议去看这篇 底层结构 先看到UI渲染的底层结构,UI渲染主要由三个部分组成:CanvasUpdateRegistry, Graphic, CanvasRender CanvasUpdateRegistry负责通 阅读全文 »
posted @ 2022-04-12 21:03 cancantrbl 阅读(2051) 评论(0) 推荐(1) 编辑
摘要:Masking is implemented using the stencil buffer of the GPU. Mask是通过GPU的模板缓冲实现的,关键代码只有一行,它的作用是为Mask对象生成一个特殊的材质,这个材质会将StencilBuffer的值置为1。 var maskMateri 阅读全文 »
posted @ 2022-04-05 14:12 cancantrbl 阅读(437) 评论(0) 推荐(0) 编辑
摘要:今天UX要我给滚动列表上的item加上粒子特效,想着没问题啊。直接把特效挂在item上,但没有考虑到particle system的canvas order问题,导致出现了例子特效出现在窗口上方,特效并不能被mask遮盖掉的问题。 额外做了个简单的demo,scrollview做窗口 方案一:用图片 阅读全文 »
posted @ 2021-09-23 17:39 cancantrbl 阅读(3799) 评论(0) 推荐(1) 编辑
摘要:遇到了需要做动态水波效果的需求,类似下图 1. 最简单最naive的是只用一张水波图 将这个图片挂在一个有mask组件的父节点上,这个父节点可以挂一个圆形的图当做遮罩。注意这个水波图的宽度一定要比圆形的直径长。 用代码控制水波图的左右移动,来做水流波动的效果,进度条的位置通过调整其y轴的大小。 这种 阅读全文 »
posted @ 2021-06-14 20:27 cancantrbl 阅读(1158) 评论(0) 推荐(0) 编辑
摘要:目前所接触的UI动画效果有三种制作方法: 1. Animator:直接挂在组件上, controller里控制动画的播放。 由Animation, Controller组成, 动画之间的transition可以用代码控制(在箭头上加一个trigger,代码控制开关就ok了) 2. Timeline: 阅读全文 »
posted @ 2021-05-10 21:59 cancantrbl 阅读(181) 评论(0) 推荐(0) 编辑
摘要:如果运行unity后,button的点击事件无响应,点击失效的话,原因有七种情况: 被遮挡:按钮被其他透明UI遮挡住。把按钮移到其UI的上一层 Canvas Group:按钮的父物体有Canvas Group组件并未选择此组件的Interactable和Blocks Raycasts。这个很常见,要 阅读全文 »
posted @ 2021-03-13 23:34 cancantrbl 阅读(1530) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示