求助,UIPainter搭载的UI保存为prefab后,组件和控制器联动、进度条显示等不正常

我通过FairyGUI的组件制作了一个简单的动画效果并通过控制器切换状态来控制他们,在Unity编辑器中,我创建了一个平面并通过挂载UIPainter来显示它们。
 
当这种组件在场景里只有一个的时候,一切都显示正常
 
但当我直接复制这一组件,又或者将它们保存为prefab后拖出一个副本后,尽管我可以正常更改每个组件的控制器index(它们不互通),但通过FairyGUI编辑器将变化效果关联给控制器的部分都失效了,所有的组件只在我更改我在Unity场景中手动设置的那个UIPainter中控制器的时候才会进行联动,而在场景中不存在这个手动设置的UIPainter时,一切联动效果都会失效,而经过尝试后,进度条之类的组件也是如此。
 
这似乎是半个月前我遇到的问题的真正所在。所以,在场景里需要有多个相同组件(如血条)的时候,唯一正确的方法应该是通过代码动态创建UI?
已邀请:

TruckyTruck

赞同来自:

补充一下,使用Example中的方法动态为一个已存在的Plane挂载UIPainter并设置组件后,多个组件状态下一切依旧如主楼描述所示,只不过能够控制场景中全部该组件的组件变成了另一个
 
也就是说主楼所说的动态创建UI还是不能解决问题

谷主

赞同来自:

不存在这样的问题。不是很清楚你说的失效是什么意思,你可以在源码里打断点看看。

TruckyTruck

赞同来自:

改用WorldSpace显示方案的UIPanel了,更改后一切都正常了,乐
 
如果有人遇到差不多的问题的话,我的建议是能用Panel解决的就不要用Painter了,问题又神秘又小众

要回复问题请先登录注册