动态加载⭐️基于案例AR-PocketCat
Posted 小星河丨U3D开发支持
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了动态加载⭐️基于案例AR-PocketCat相关的知识,希望对你有一定的参考价值。
文章目录
原案例地址:AR-PocketCat
🟥 动态加载的意义
默认的加载模型是通过将3D物体直接放在场景中并作为识别目标的子物体来实现的,这种实现方式的缺点是:当场景中很多识别目标后,需要一次性加载的模型内容会占用很大内存
因此,在实际项目案例中需要动态加载识别目标对应的模型,在识别丢失后删除模型,这样可保证在同一时刻内存的占用手机是可以承受的
🟧 基于AR-PocketCat动态加载的实现步骤
1、将该项目从自定义目标识别转化为单一目标对象识别的项目,隐藏“拍摄”按钮和UserDefinedTargetBuilder
2、新建一份ImageTarget的DefaultTrackableEventHandler,命名为DefaultTrackableEventHandler_DynamicLoading,只激活这个追踪脚本
3、将OnTrackingFound和OnTrackingLost方法更改为以下内容
private void OnTrackingFound()
GameObject obj = GameObject.Instantiate(Resources.Load("cat_Idle")) as GameObject;
obj.transform.parent = this.transform;
obj.transform.position = this.transform.position;
obj.GetComponent<Audiosource>().Play();
private void OnTrackingLost()
Animation to = GetComponentInChildren<Animation>();
if (to != null)
Destroy(to.gameObject);
Resources.UnloadUnusedAssets();
🟨 效果展示
大家还有什么问题,欢迎在下方留言!
如果你有 技术的问题 或 项目开发
都可以加下方联系方式
和我聊一聊你的故事🧡
以上是关于动态加载⭐️基于案例AR-PocketCat的主要内容,如果未能解决你的问题,请参考以下文章
❤️1024,我一直都在~❤️数据可视化+爬虫:基于 Echarts + Python 实现的动态实时大屏范例 - 行业搜索指数排行榜17