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