Unity3D/Vuforia AR模型动态加载
功能为使用Unity3D/Vufora+Trilib插件实现一个简单的AR环境下的外部模型文件查看功能,主要支持FBX,OBJ等网格模型,具体可见Trilib官网。Trilib可以在Unity资源商店获取,该插件允许从本地或URL动态加载模型资源。
具体实现方法:通过Trilib插件将外部模型动态加载到ImageTarget上并调整模型大小,修改Trilib中AssetLoader物体下的AssetLoaderWindow脚本。
通过代码获取ImageTarget包围盒大小并将模型缩放到包围盒大小范围内,再通过SetParent函数将动态模型_rootGameObject放置于ImageTarget层级下。此处需要注意的是SetParent函数的第二个参数须设置为false,否则在下一次加载模型时模型位置可能会偏移出视野外(false代表子物体Transform值不会根据父物体Transform变化)。
具体修改代码如下:
//获取包围盒函数
private Bounds GetBounds(GameObject target, bool include_children = true)
{
Renderer[] mrs = target.gameObject.GetComponentsInChildren<Renderer>();
Vector3 center = target.transform.position;
Bounds bounds = new