Unity EasyAR Coloring3D AR绘图原理

EasyAR最新4.0版本加了很多新功能,本文主要讲一下EasyAR  Coloring3D 这个功能的原理

一、模型和识别图关系

首先识别图应该是作为模型的贴图使用的,因此在做模型UV的时候,要根据识别图设置

红框部分属于模型贴图,其他部分就是随便填充的,模型uv要对应上

二、相机图像转贴图

Coloring3D脚本是实现的代码,从CameraImageRenderer中获取相机图片。反正获取方式很多,只要获取到相机返回的图像就行。然后把图像给模型材质球。然后监听图像识别,只要图像有识别,就能从相机返回图像中计算模型贴图

三、计算贴图位置

首先EasyAR识别到图片后,会将模型移动到相机图片中对应熊的位置。也就是识别到图后,熊位置周围的一部分范围应该就是识别图了。这个范围在ImageTarget下的坐标应该是(0,0 ,  0) 到(1,1 , 0),这是相对坐标,所以只要在识别到图片后,将这个ImageTarget的相对坐标,转换成世界坐标,然后转换成屏幕坐标,然后ComputeGrabScreenPos透视计算,得到的(0-1)的坐标,应该就是属于uv了。相机图像用这个uv计算就可以正常给模型贴图了。

发布了31 篇原创文章 · 获赞 2 · 访问量 2770

猜你喜欢

转载自blog.csdn.net/BDDNH/article/details/103877459
今日推荐