2013-09-29 11 views
6

現在、私はUnity3DでいくつかのAugmented Realityモバイルアプリを開発中です。パフォーマンスは画質の影響を受けます。Unity3Dで自動フォーカスするWebカメラに質問する方法

WebカメラにUnity3Dの自動フォーカスを依頼する方法はありますか?

+0

こんにちはflyzhao、これは正常に完了しましたか? WebカメラやデバイスのカメラにUnity内からのフォーカスを強制しましたか? – Joshua

+1

@Joshua私は今それに取り組んでいません。しかし、あなたはアセットストアからいくつかのアンドロイドのネイティブプラグインを見つけることができます。この問題を解決する可能性があります。また、花王の答えはうまいと思います。あなたがアンドロイドについてのいくつかのネイティブな知識を知っているなら、それは最良の方法でしょう。 – flyzhao

答えて

6

私が知る限り、純粋なUnity3Dでは不可能です。

しかし、これを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からクラスを呼び出す必要があり:

public class ExampleClass : MonoBehaviour { 
    void Start() { 
     AndroidJavaObject jo = new AndroidJavaObject("com.mypackage.Autofocus"); 
     jo.Call("enableAutofocus"); 
    } 
} 

あなたはUnity3D here用のJavaプラグインの作成についての詳細情報を見つけることができます。

+0

こんにちは花王、これは可能でしょうか?あなた自身でこれを試しましたか?私の仕事はうまくいかないようです... – Joshua

+0

新しい 'camera2'のためにこのスニペットを書き直してもらえますか?私は本当に混乱しています...カメラを開いてフォーカスを設定するには、 'enableAutofocus'メソッドが必要です。ありがとう – Joshua

関連する問題