原案例地址: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);
}