模型脱卡丨基于案例AR-PocketCat

2024-08-14 16:53:07 浏览数 (2)

原案例地址:AR-PocketCat

模型脱卡原理

脱卡实现原理:将3D物体从目标下移出,不再将识别图作为3D物体的父对象,这样就能实现模型不跟随识别物体的效果。

两种方法介绍:

1、自己设置脱卡移出的物体的目标位置和父对象,完成脱卡的实现

2、在某物体下新建为最终目标位置的空物体,在OnTrackingLost时,将ImageTarget下的3D模型移到空物体下

脱卡步骤

1、选择ImageTarget,移除自身DefaultTrackableEventHandler,将该脚本复制一份并添加到ImageTarget上

2、打开该脚本,在其类下声明公共变量

代码语言:javascript复制
bool b = false;

3、在OnTrackingFound方法内增加代码

代码语言:javascript复制
b = true;

4、在OnTrackingLost方法内增加代码

代码语言:javascript复制
//避免第一次进入场景,因为识别丢失而产生不必要的问题
            if (b == true)
            {
                Animation to = GetComponentInChildren<Animation>();
                to.transform.parent = this.transform.parent;
                to.GetComponentInChildren<SkinnedMeshRenderer>().enabled = true;
                to.transform.position = new Vector3(0, 0, 0);
            }

0 人点赞