admin 管理员组文章数量: 887021
一、前言
上一篇Vuforia用在安卓设备中外接USB摄像头(一)主要介绍的是纯安卓上使用Vuforia+UVC Camera,本篇介绍在Unity中开发Vuforia+UVCCamera。有了上一篇配置的环境和生成的SO文件基础,本篇才可以顺利的完成在Unity中使用Vuforia+UVCCamera。
二、开发过程
1、unity中环境搭建:首先,在unity中新建Plugins/Android/libs文件夹,然后将上一篇生成的samples\UVCDriver\build\bin\Android文件夹里的文件都拖入到刚刚在unity中建立的libs文件夹中,最后在unity中如图2.1所示:
2、勾选Player Settings/XR Settings的Vuforia Augmented Reality Support,如图2.2所示unity在勾选之后会自动导入开发Vuforia相关的文
件,在unity2019.2.11中勾选完会有提示不能使用vuforia,需要删掉Graphics APIs中的其他选项,只保留OpenGLES3,,如图2.3所示
3、新建一个Scene,添加ARCamera和ImageTarget,搭建一个简易的AR单图识别场景,并配置好ARCamera中的Key
4、新建一个脚本命名为UVCManager,该脚本为呼出对话框设置UVC调用摄像头的权限,并自动将驱动进行设置,以便Vuforia的引擎在初始化的时候采用的是外接的USB摄像头,完整的代码为:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Vuforia;
public class UVCManager : MonoBehaviour
{
private void Awake()
{
#if UNITY_ANDROID
bool driverLibrarySet = false;
driverLibrarySet = VuforiaUnity.SetDriverLibrary("libUVCDriver.so");
if (driverLibrarySet)
{
// Load your applications scene here
// InitAndLoadScene(VUFORIA_DRIVER_CAMERA_SCENE_INDEX);
// The application needs to ask for USB permissions to run the USB camera
// this is done after the driver is loaded. We call a method in the UVC driver
// Java code to request permissions, passing in the Unity app's activity.
AndroidJavaClass unityJC = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject unityActivity = unityJC.GetStatic<AndroidJavaObject>("currentActivity");
AndroidJavaClass usbControllerJC = new AndroidJavaClass("com.vuforia.samples.uvcDriver.USBController");
usbControllerJC.CallStatic("requestUSBPermission", unityActivity);
}
else
{
Debug.Log("Failed to initialize the UVC driver - defaulting to the standard scene");
// Fall back to the in-built camera
}
#endif
}
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
}
}
将该脚本随便拖入到一个场景的物体中。
5、打包发布APK
三、总结
1、使用unity2019.2.11发布的APK可以成功使用,但是在unity2018.4.12中发布的APK就出现初始化失败的界面,尚还不知道具体原因是什么;
版权声明:本文标题:Vuforia用在安卓设备中外接USB摄像头(二) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1726387607h950500.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论