201908-31 Unity3D研究院之UGUI软裁切(一百零八) 前段时间用Stencil实现了一套裁切,但是Stencil原理只能是裁或者不裁,这样是无法实现像NGUI这样的软裁切功能。之前的笔记在这里 https://www.xuanyusong.com/archives/4562 如下图所示,我们用Rect2DMask组件同时软裁切3D模型和Image.... Read More >
201908-11 UGUI深度优化技巧以及源码分析 最近我在UWA的学堂写了两篇收费文章,都是介绍UGUI的。 从2014年UGUI刚出来的时候我就毫不犹豫的放弃的NGUI,原因是UGUI有两方面是彻底碾压NGUI的 1.开发的时候不用考虑图集规划,(NGUI在后期调整图集,每个界面都要改一遍真是痛苦) 2.UGUI在C++里合并的.... Read More >
201904-27 Unity3D研究院编辑器之批处理图片添加抖动(三十三) 前几天公司有个项目,由于美术做了很多背景图并且还大量的使用了渐变过度,导致压缩图片后效果非常差,而且换成RGBA16效果也不理想,如果用RGBA32那就太浪费效率了。后来发现TexturePacker具有添加图片抖动的方式,由于项目组使用了UGUI手动一个个设置这太麻烦了,所以就做了个工具。如下图所.... Read More >
201901-18 UGUI研究院之找到具体某个引起了网格重建的UI元素(三十二) UGUI的标志性函数Canvas.SendWillRenderCanvas,我们只知道网格进行了重建,但是并不知道是哪个Canvas,由于哪个UI元素引起了Canvas网格的重建。比如,修改RectTransform的属性、Text文本内容、更换Sprite、颜色、都会引起网格重建,通过观察UGUI.... Read More >
201901-12 UGUI研究院之一个脚本同时裁切UI元素和粒子特效和3D模型(三十一) 前两个项目我一直用的是 UGUI研究院之Mask裁切UI粒子特效或者3D模型(十七) 做的裁切,但是实际开发中由循环列表中需要动态创建元素,每个新创建的元素都需要根据MaskRect的区域重新给Shader中指定,这个小小的隐患总是引起BUG。最近在做技术储备看到了Stencil一个东西,发现可以很.... Read More >
201803-20 UGUI研究院之iPhoneX自适应分辨率(三十一) 最近把游戏的iPhoneX自适应做完了,并且已经过了审。我的做法是每个界面的最上层都是一个横纵Stretch自动拉伸的,检测当发现是iPhoneX时,打开界面代码中自动设置 Left Top Right Bottom 为44. 由于我们用的是Unity5.5.4,并没有方法来判断是.... Read More >
201711-08 UGUI研究院之缓存策略让UI打开更快(三十) UGUI效率不高,界面稍微复杂一点就会出现打开慢的情况,至于为什么效率不高,Unity官网或者UWA的教程都已经写的很全面了。本篇文章我不站在效率优化的角度来讲(快成型的项目其实有很度无奈),从UI缓存的角度来讲,利用缓存UI的方式来让UI打开的速度更快。灵感来自我的上一篇文章 http:/.... Read More >
201711-06 UGUI研究院之Prefab嵌套特效部分(二十九) 好久没有写文章,这段时间恶心与快乐并行这,总之希望大伙不要忘记我,今天得空我来更新一篇最近的心得。 Prefab in Prefab的需求太多了(据可靠消息unity2018官方会支持这个功能),以前我也写过一个解决方案,但是后来自己都不用了。今天我写的这篇是自己使用过一段时间,并且觉得还不错.... Read More >
201708-12 UGUI研究院之针对IOS平台设置某些图不打图集(二十八) 最近超累,还得再苦逼一段时间。 抽空更新一下博客,希望大家不要忘记我。前段时间写过一篇处理游戏中的大图片进行压缩的文章。 http://www.xuanyusong.com/archives/4312 在处理大图片的时候,为了保证每张图片都会压缩,所以我会自动给每个图片添加一个packingTag,如此一来即使美术出的图片不是2的幂次方,unity也会将它拉成2的幂次方,在ios平台会.... Read More >
201706-08 UGUI研究院之新手引导事件上下分离(二十七) 新手引导最好和业务逻辑拆开,也就是做新手引导的程序员不能去影响到下面做系统的人。 1.开发一个新手引导编辑器,让策划配出每个引导的点击区域。 2.在Shader中扣一个洞。(圆形或者矩形)用来做显示的点击区域。 3.新手引导的进度需要与服务器进行同步,为了不影响到下面的业务逻辑,在.... Read More >
201704-28 UGUI研究院之RawImage显示多边形或圆形贴图(二十六) 项目中可能有些icon.有的地方显示矩形,有的地方又要显示圆形。 网上我看有人用shader实现了,我觉得使用起来不太方便。后来参考了一个工程 https://bitbucket.org/ddreaper/unity-ui-extensions 把sp.... Read More >
201704-10 [投稿]Unity3D游戏优化之头顶UI 3D角色头顶会显示文字、图标、血条等,它会跟随角色移动,始终朝向相机,可能还有定制的缩放,一般情况下会考虑用UGUI来做,但完成后发现这样做的效率很低,而且遮挡正确性也保证不了。 效率低因为: 1,渲染上每块文字、图片都要用一次drawcall,图片文字又可能是交替出现的没法利用dyna.... Read More >
201703-31 UGUI研究院之在UI上使用RenderTexture显示模型+AlphaBlend特效(二十五) 在UI上显示模型无非就是2种。 1.在两个UI摄像机中夹一层3d摄像机,利用摄像机的Viewport Rect属性对模型进行裁切。 2.使用RenderTexture渲染在RawImage后显示在UI上。 我上一个项目就是采取第一种方法,用起来很不舒服。因为有很多效果都做不了,比如.... Read More >