unity3d GL画线/物体跟随/坐标系转换

看见标题的人是不是在想...

一个小小的GL画线难吗?

一个小小的物体跟随难吗?

嗯,的确,一点不难。。。。

我一开始也是像你们那样想的,但是实际操作起来,还是和理论有区别的

写这个demo起因是这样的:

面试到了一家虚拟现实的公司,因为没有去公司

网上直接谈的,谈妥了hr估计是想看看我能不能胜任

给了我一张效果图,让我去实现画线的功能

咳咳,要求还是比较细致的,这里我们后面说

废话不多说,老规矩,先上效果图,然后直接进入主题

第一张是hr给我的图,第二张是我自己实现的

技术分享

技术分享

需求如下:

1、模型是旋转的

2、线条必须在模型上方

3、模型旋转时线条动态调整到相对应的位置(也就是说不管模型怎么旋转,线条永远指着文字描述对应的部位)

4、线条起始位置(指向文字描述的那一端)保持在文字正下方

5、线条终止位置(指向3D模型的那一端)画上蓝点

6、比如双手、双脚等同类物体,可以一个文字描述指向两个3D模型部位

 

对应解决方案:(画线用GL)

1、transform.Rotate

2、设置层、使用两个camera、设置camera Depth

3、设置子物体,取子物体世界坐标

4、计算文字的宽高

起始位置X = 起始位置屏幕X坐标 + 文字宽 / 2(X坐标在文字中间)

起始位置Y = 起始位置屏幕Y坐标 - 文字高度(Y坐标在文字下方)

5、取对应部位的世界坐标,然后转换成屏幕坐标,在该位置画一张蓝点图片

6、这个太简单了- -!设置为同一起始位置即可

 

最近实在太忙,代码方面我就不一一叙述,望谅解

思路已经给出来了,大家可以按照我提供的思路去处理

如果遇到问题搞不定可以给我留言,也可以下载我提供的demo研究

下载链接:http://pan.baidu.com/s/1o6oOi1s

本文链接:http://www.cnblogs.com/shenggege/p/4222272.html

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。