UGUI之坑点小结

2024-02-03 14:32
文章标签 小结 坑点 ugui

本文主要是介绍UGUI之坑点小结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

以下是我总结断断续续遇到的一些UGUI上的问题,有机会能改则改,改不了的只能想办法注意和避免了。

UGUI刷新问题

场景中没有遮挡的背景时,首次打开UI 手机上不停闪烁或各种花屏问题:
处理办法:

场景中最好加一个物体遮挡,如进游戏底部加一块纯黑板背景,可以避免UI闪烁

其实是canvas相机照不到东西的时候,UGUI的显示不会及时刷新,比如把canvas中最后一个active的对象都隐藏的话,显示上会不刷新,即使拿到的属性activeself其实是false。即看到显示残留

如果父对象下面挂了几个子对象a,b,c,d,如果删除了其中部分子对象 如a,想立即修改bcd的先后层次的话,用SetSiblingIndex()方式就可能出问题,即出现 数值刷新了,但显示未刷新的问题。
解决办法:

因此对于兄弟节点出生销毁后同帧立即调整当前节点层级的话,最好通过transform.SetAsFirstSibling();或transform.SetAsLastSibling();来实现层级调整

UGUI的图集问题
1. UGUI的图集打包算法有问题,基本表现是它一定把不同实际压缩格式的小图放在了不同的group。比如有两个小图,用了不同的压缩格式,他们最终会在两个group图,导致一个图集扩成了两张;
2. 带透明通道和不带透明通道的素材也会被分在两个group!!坑的地方来了,使得如果众多素材中有几个不带透明通道的,那么你把那些透明素材压缩到死,也不会将非透明通道图合并到当前图集来,(因为是带和不带透明通道的两种图本身就会以两种压缩格式来处理))
3. 呵呵mitmap有或没有也会被拆分到两个group里;

解决办法,几个都要保证:
  1. 同一个图集统一压缩格式;
  2. 在素材上,同一个图集中的所有素材都应该是带透明像素的,或者统一不带透明像素,遇到透明图集出现个别不包含透明像素的,去PS给将这个图其中一像素修改为有透明度就OK(如透明度99%);
  3. 想要使用UGUI默认的ETC压缩的话,单张图应该宽和高尺寸都能被4整除。否则的话,该单独素材会以RGB32压缩格式处理;

因此,如图中,所有标黄的地方,即便你填了相同的Packing Tag,但黄色设置有一项不一致,最终这批图不会出现在同一个图集中的

这里写图片描述

这篇关于UGUI之坑点小结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/674447

相关文章

C++中NULL与nullptr的区别小结

《C++中NULL与nullptr的区别小结》本文介绍了C++编程中NULL与nullptr的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编... 目录C++98空值——NULLC++11空值——nullptr区别对比示例 C++98空值——NUL

C++ Log4cpp跨平台日志库的使用小结

《C++Log4cpp跨平台日志库的使用小结》Log4cpp是c++类库,本文详细介绍了C++日志库log4cpp的使用方法,及设置日志输出格式和优先级,具有一定的参考价值,感兴趣的可以了解一下... 目录一、介绍1. log4cpp的日志方式2.设置日志输出的格式3. 设置日志的输出优先级二、Window

Python中反转字符串的常见方法小结

《Python中反转字符串的常见方法小结》在Python中,字符串对象没有内置的反转方法,然而,在实际开发中,我们经常会遇到需要反转字符串的场景,比如处理回文字符串、文本加密等,因此,掌握如何在Pyt... 目录python中反转字符串的方法技术背景实现步骤1. 使用切片2. 使用 reversed() 函

C#中Guid类使用小结

《C#中Guid类使用小结》本文主要介绍了C#中Guid类用于生成和操作128位的唯一标识符,用于数据库主键及分布式系统,支持通过NewGuid、Parse等方法生成,感兴趣的可以了解一下... 目录前言一、什么是 Guid二、生成 Guid1. 使用 Guid.NewGuid() 方法2. 从字符串创建

Redis分片集群、数据读写规则问题小结

《Redis分片集群、数据读写规则问题小结》本文介绍了Redis分片集群的原理,通过数据分片和哈希槽机制解决单机内存限制与写瓶颈问题,实现分布式存储和高并发处理,但存在通信开销大、维护复杂及对事务支持... 目录一、分片集群解android决的问题二、分片集群图解 分片集群特征如何解决的上述问题?(与哨兵模

SpringBoot中使用Flux实现流式返回的方法小结

《SpringBoot中使用Flux实现流式返回的方法小结》文章介绍流式返回(StreamingResponse)在SpringBoot中通过Flux实现,优势包括提升用户体验、降低内存消耗、支持长连... 目录背景流式返回的核心概念与优势1. 提升用户体验2. 降低内存消耗3. 支持长连接与实时通信在Sp

Python打印对象所有属性和值的方法小结

《Python打印对象所有属性和值的方法小结》在Python开发过程中,调试代码时经常需要查看对象的当前状态,也就是对象的所有属性和对应的值,然而,Python并没有像PHP的print_r那样直接提... 目录python中打印对象所有属性和值的方法实现步骤1. 使用vars()和pprint()2. 使

HTML5 getUserMedia API网页录音实现指南示例小结

《HTML5getUserMediaAPI网页录音实现指南示例小结》本教程将指导你如何利用这一API,结合WebAudioAPI,实现网页录音功能,从获取音频流到处理和保存录音,整个过程将逐步... 目录1. html5 getUserMedia API简介1.1 API概念与历史1.2 功能与优势1.3

Java对异常的认识与异常的处理小结

《Java对异常的认识与异常的处理小结》Java程序在运行时可能出现的错误或非正常情况称为异常,下面给大家介绍Java对异常的认识与异常的处理,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参... 目录一、认识异常与异常类型。二、异常的处理三、总结 一、认识异常与异常类型。(1)简单定义-什么是

Python函数返回多个值的多种方法小结

《Python函数返回多个值的多种方法小结》在Python中,函数通常用于封装一段代码,使其可以重复调用,有时,我们希望一个函数能够返回多个值,Python提供了几种不同的方法来实现这一点,需要的朋友... 目录一、使用元组(Tuple):二、使用列表(list)三、使用字典(Dictionary)四、 使