如何使用Unity3D让网络摄像头自动对焦

如何使用Unity3D让网络摄像头自动对焦,unity3d,camera,augmented-reality,Unity3d,Camera,Augmented Reality,目前,我正在使用Unity3D开发一些增强现实手机应用程序。图像质量会影响性能 有没有办法让网络摄像头使用Unity3D自动对焦 据我所知,这在纯Unity3D中是不可能的 public void enableAutofocus() { camera = camera.open(); Camera.Parameters parameters = camera.getParameters(); List<String> focusModes = paramete

目前,我正在使用Unity3D开发一些增强现实手机应用程序。图像质量会影响性能


有没有办法让网络摄像头使用Unity3D自动对焦

据我所知,这在纯Unity3D中是不可能的

public void enableAutofocus() {
    camera = camera.open();
    Camera.Parameters parameters = camera.getParameters();
    List<String> focusModes = parameters.getSupportedFocusModes();
    if (focusModes.contains(Camera.Parameters.FOCUS_MODE_AUTO)) {
        parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_AUTO);
    }
    camera.setParameters(parameters);
}
然而,如果您是在Android上开发这个,您可以用java编写一个插件,它可以设置自动聚焦并从Unity3D调用它

public void enableAutofocus() {
    camera = camera.open();
    Camera.Parameters parameters = camera.getParameters();
    List<String> focusModes = parameters.getSupportedFocusModes();
    if (focusModes.contains(Camera.Parameters.FOCUS_MODE_AUTO)) {
        parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_AUTO);
    }
    camera.setParameters(parameters);
}

您可以找到有关为Unity3D创建Java插件的更多信息

嗨,赵飞,你成功地做到了吗?你强迫网络摄像头或设备摄像头从Unity内部聚焦了吗?@Joshua我现在不工作。但是你可以从AssetStore中找到一些android原生插件。它可以解决这个问题。而且,我认为高的答案是好的。如果你知道一些关于android的本地知识,这将是最好的方法。嗨,高,你确定这是可能的吗?你自己试过吗?我的似乎不起作用了……你能帮我为新的
camera2
重新编写这个片段吗?我真的很困惑。。。我只需要使用
启用自动对焦
方法打开相机并设置其焦距。谢谢