游戏蛮牛学习群(纯技术交流,不闲聊):159852603
游戏蛮牛 手机端
开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

开发者专栏

关注:2314

当前位置:游戏蛮牛 技术专区 开发者专栏

__________________________________________________________________________________
开发者干货区版块规则:

  1、文章必须是图文形式。(至少2幅图)
      2、文章字数必须保持在1500字节以上。(编辑器右下角有字数检查)
      3、本版块只支持在游戏蛮牛原创首发,不支持转载。
      4、本版块回复不得无意义,如:顶、呵呵、不错......【真的会扣分的哦】
      5、......
__________________________________________________________________________________
查看: 1195|回复: 19

[仅为年时] UGUI气泡的遮挡问题研究与解决(下)

[复制链接]  [移动端链接]
排名
456
昨日变化

258

主题

1338

帖子

7003

积分

Rank: 16

UID
73452
好友
98
蛮牛币
5597
威望
0
注册时间
2015-2-6
在线时间
2105 小时
最后登录
2018-9-20

专栏作家蛮牛译员社区QQ达人活力之星七夕浪漫情人原创精华达人蛮牛哥认证开发者

QQ
发表于 2017-11-13 17:11:25 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
接着上篇来写,如何改变面板中的层次结构是一个问题,根据什么来判断层次的先后顺序是一个问题,只要解决这两点就OK啦


很简单,unity中其实有一个方法可以通过脚本来改变层次结构,该方法就是SetSiblingIndex;然后根据什么来判断这点,当然是根据物体与摄像机的距离来判断。


我们可以把所需要的物体与摄像机之间的距离计算出来,然后通过距离的大小改变UI的层次索引。
当然,这个方法要放到Update里或者相机有位置改变的时候执行,这样不论相机怎么移动,都会看到距离相机近的物体的UI在最前面,符合实际情况。


[C#] 纯文本查看 复制代码
Camera cam;
    float[] deviceToCam = new float[3];
    Dictionary<float, RectTransform> floatToUI = new Dictionary<float, RectTransform>();
    void test()
    {
        cam = Camera.main;
        deviceToCam[0] = Vector3.Distance(cam.transform.position, aa.position);
        floatToUI.Add(deviceToCam[0], aaa);
        deviceToCam[1] = Vector3.Distance(cam.transform.position, bb.position);
        floatToUI.Add(deviceToCam[1], bbb);
        deviceToCam[2] = Vector3.Distance(cam.transform.position, cc.position);
        floatToUI.Add(deviceToCam[2], ccc);

        Array.Sort(deviceToCam);
        Array.Reverse(deviceToCam);

        for (int j = 0; j < 3; j++)
        {
            floatToUI[j].SetSiblingIndex(j);
        }
    }



上述代码有字典键值的问题,但是意思正确。具体项目中可以用列表、字典等来存放。


另外可以通过两帧之间的差值判断相机的移动,如下:
[C#] 纯文本查看 复制代码
#region 通过两帧差值判断相机移动
        newPos = cam.transform.position;
        if (oldPos == Vector3.zero)
        {
            
        }
        else
        {
            cha = newPos - oldPos;
        }
        oldPos = newPos;
        #endregion

        //cha.magnitude
        if(cha.magnitude > 0.00001f)
        {
            test();
        }




附上一张图:
122.png



相机的移动方式很多,我就不多说了。

评分

参与人数 2鲜花 +7 收起 理由
a258539 + 2 很给力!
海峡同城哥 + 5 哒哒哒哒哒哒哒哒

查看全部评分


回复

使用道具 举报

7日久生情
2614/5000
排名
3289
昨日变化
18

2

主题

1806

帖子

2614

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
241666
好友
0
蛮牛币
10197
威望
0
注册时间
2017-9-6
在线时间
384 小时
最后登录
2018-9-20
发表于 2017-11-14 07:16:58 来自Mobile--- | 显示全部楼层
感谢分享

回复

使用道具 举报

5熟悉之中
513/1000
排名
8546
昨日变化
4

4

主题

251

帖子

513

积分

Rank: 5Rank: 5

UID
247659
好友
0
蛮牛币
1403
威望
0
注册时间
2017-10-9
在线时间
128 小时
最后登录
2018-9-12
发表于 2017-11-14 07:20:07 来自Mobile--- | 显示全部楼层
谢谢分享!!

回复

使用道具 举报

排名
37832
昨日变化
25

0

主题

5

帖子

18

积分

Rank: 1

UID
254101
好友
0
蛮牛币
48
威望
0
注册时间
2017-11-13
在线时间
8 小时
最后登录
2018-5-29
发表于 2017-11-14 09:40:45 | 显示全部楼层
感谢分享
[发帖际遇]: jun496276723 乐于助人,奖励 3 蛮牛币. 幸运榜 / 衰神榜

回复

使用道具 举报

4四处流浪
349/500
排名
9187
昨日变化
1

0

主题

106

帖子

349

积分

Rank: 4

UID
223562
好友
0
蛮牛币
210
威望
0
注册时间
2017-5-24
在线时间
127 小时
最后登录
2018-9-9
发表于 2017-11-14 10:14:59 | 显示全部楼层
谢谢分享
[发帖际遇]: 牛儿快吃草 乐于助人,奖励 2 蛮牛币. 幸运榜 / 衰神榜

回复

使用道具 举报

7日久生情
3004/5000
排名
330
昨日变化

1

主题

696

帖子

3004

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
27356
好友
1
蛮牛币
4380
威望
0
注册时间
2014-5-30
在线时间
599 小时
最后登录
2018-9-20
发表于 2017-11-14 10:26:32 | 显示全部楼层
很有用!
感谢分享

回复

使用道具 举报

5熟悉之中
617/1000
排名
4982
昨日变化
4

4

主题

151

帖子

617

积分

Rank: 5Rank: 5

UID
252485
好友
0
蛮牛币
904
威望
0
注册时间
2017-11-4
在线时间
194 小时
最后登录
2018-8-28
发表于 2017-11-14 10:27:15 | 显示全部楼层
感谢楼主,不错不错

回复 支持 反对

使用道具 举报

7日久生情
2240/5000
排名
19535
昨日变化
15

2

主题

1858

帖子

2240

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
185807
好友
0
蛮牛币
2918
威望
0
注册时间
2016-11-22
在线时间
354 小时
最后登录
2018-8-4
发表于 2017-11-14 10:37:42 | 显示全部楼层
赞,学习了,谢谢分享

回复 支持 反对

使用道具 举报

排名
20225
昨日变化
27

0

主题

6

帖子

48

积分

Rank: 1

UID
228189
好友
1
蛮牛币
76
威望
0
注册时间
2017-6-22
在线时间
18 小时
最后登录
2018-7-27
发表于 2017-11-14 11:52:54 | 显示全部楼层
学习了,谢谢分享

回复

使用道具 举报

4四处流浪
366/500
排名
9284
昨日变化
2

0

主题

184

帖子

366

积分

Rank: 4

UID
235323
好友
1
蛮牛币
601
威望
0
注册时间
2017-8-1
在线时间
68 小时
最后登录
2018-4-2
发表于 2017-11-14 12:38:13 | 显示全部楼层
谢谢分享,写的不错

回复 支持 反对

使用道具 举报

7日久生情
1950/5000
排名
1917
昨日变化
6

0

主题

726

帖子

1950

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
148286
好友
0
蛮牛币
3614
威望
0
注册时间
2016-5-11
在线时间
562 小时
最后登录
2018-9-20
发表于 2017-11-14 14:17:43 | 显示全部楼层
[发帖际遇]: 一个袋子砸在了 tzb1125 头上,tzb1125 赚了 1 蛮牛币. 幸运榜 / 衰神榜

回复

使用道具 举报

8常驻蛮牛
7422/10000
排名
239
昨日变化

0

主题

3862

帖子

7422

积分

Rank: 8Rank: 8

UID
3215
好友
0
蛮牛币
268
威望
0
注册时间
2013-9-4
在线时间
1628 小时
最后登录
2018-9-15
发表于 2017-11-14 15:21:54 | 显示全部楼层
的顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶

回复 支持 反对

使用道具 举报

5熟悉之中
898/1000
排名
2269
昨日变化
3

2

主题

99

帖子

898

积分

Rank: 5Rank: 5

UID
158341
好友
0
蛮牛币
1783
威望
0
注册时间
2016-7-28
在线时间
219 小时
最后登录
2018-5-24
发表于 2017-11-14 16:26:02 | 显示全部楼层
好帖啊,谢谢分享

回复

使用道具 举报

5熟悉之中
986/1000
排名
3053
昨日变化
14

0

主题

275

帖子

986

积分

Rank: 5Rank: 5

UID
228538
好友
9
蛮牛币
1995
威望
0
注册时间
2017-6-24
在线时间
263 小时
最后登录
2018-9-20
发表于 2017-11-14 17:21:58 | 显示全部楼层
感谢分享

回复

使用道具 举报

5熟悉之中
767/1000
排名
4541
昨日变化

0

主题

222

帖子

767

积分

Rank: 5Rank: 5

UID
227843
好友
1
蛮牛币
2116
威望
0
注册时间
2017-6-20
在线时间
249 小时
最后登录
2018-2-3
发表于 2017-11-15 09:02:51 | 显示全部楼层
66666666666666666
[发帖际遇]: 一个袋子砸在了 jk13171221 头上,jk13171221 赚了 1 蛮牛币. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

关闭

站长推荐 上一条 /1 下一条

快速回复 返回顶部 返回列表