Unity学习小结4 - NGUI的几点性能问题

沉默了好长时间,也忙了好长时间,起始也 是一直在为自己没能好好的总结和思考找借口,想总结,时间总还是能抽出来的。最近积攒的坑感觉差不多够多,往出倒上一部分,也相当于为自己今后解决问题多留一些注意点。很多地方写的不准确和错的,还希望大家能够帮我指出。

1. 滚屏组件UIScrollView低性能问题:

如图是我们实现一个带子节点元素的滚动屏幕,括号 中的组件为非必须,像如果想要实现带点击事件的话,UIDragScrollView节点上就得挂上button脚本了。我之所以把结构画出来,是因为在UIScrollView和UIDragScrollView看似职能不一样的脚本中做了很多“重复”的事情。UIScrollView里有OnPress、 OnDrag的事件嵌套调用,这些都不是问题。为了实现拽的效果,UIScrollView的LateUpdate里还添加了一些后续的处理包括重调OnDrag,使得如果我们添加UIScrollView的OnDragFinish事件的话,该事件会被执行两次。而且LateUpdate里的调用会有明显的延迟,两个OnDragFinish事件间隔时间间隔较久。我个人不需要“拖拽”的效果,就将LateUpdate中的OnDrag

去掉。目前暂未发现有影响的BUG。


2. OnDragScrollView的BUG:

同样是上面的设计,我们可以实现一个翻页的滚屏。但是通常的设计是UIDragScrollView的组件是一页。但是如果我每一页中有多个UIDragScrollView呢?每个元素控制的坐标范围就不够一屏。这种情况下是没法直接全屏翻页的。。比如MoveRelative之类的,直接失效,最后只好暴力的指定上下页的元素。所以说NGUI其实还有很多不完美的地方,等着我们用心去发现和逐步的优化。



2014-9-20 22:07:55

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值