您的位置:首页 > 移动开发 > Unity3D

unity调用摄像头和闪光灯

2017-08-30 16:31 1641 查看

1、开启现行对焦模式(FOCUS_MODE_CONTINUOUS_AUTO)

这种模式可以使设备根据当前场景进行自动对焦

2、Vuforia其他对焦模式

并不是所有的设备都支持线性对焦的,所以需要启用其他对焦模式

3、触发自动对焦(FOCUS_MODE_TRIGGER_AUTO)

点击屏幕触发自动对焦模式,这个在Vuforia的demo中都有涉及到。

4、活用闪光灯

闪光灯的作用就是补光,不管是用作手电筒还是camera中。如果你的应用需要在黑暗的环境中运行,那么需要打开闪光灯才行。

Vuforia API:

CameraDevice.Instance.SetFlashTorchMode( true );

在Unity3d中:

CameraDevice.Instance.SetFlashTorchMode( true );

实例代码:
  void  Start()  

    {  

        m_bIsFocus = false;  
        CameraDevice.Instance.SetFocusMode(CameraDevice. FocusMode.FOCUS_MODE_CONTINUOUSAUTO);  

    }  
    void  Update()  
    {  

        //自动对焦  
        //if (m_bIsFocus)  

#if UNITY_EDITOR  
        if (Input .GetMouseButtonUp( 0))  

#elif UNITY_ANDROID || UNITY_IPHONE  
        if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Began)  

#endif  
        {  

            CameraDevice.Instance.SetFocusMode(CameraDevice. FocusMode.FOCUS_MODE_CONTINUOUSAUTO);  
        }  

    }  
调用后摄像头:
public void  foneCamera(){  

           i++;  

          if (i==1)  
               {  

        CameraDevice.CameraDirection cameraDirection = CameraDevice.CameraDirection.CAMERA_FRONT;  
        CameraDevice.Instance.Stop();  

        CameraDevice.Instance.Deinit();  
        CameraDevice.Instance.Init(cameraDirection);  

        CameraDevice.Instance.Start();            
                }        

           if (i==2)  
            {  

                CameraDevice.CameraDirection cameraDirection = CameraDevice.CameraDirection.CAMERA_BACK;  
                CameraDevice.Instance.Stop();  

                CameraDevice.Instance.Deinit();  
                CameraDevice.Instance.Init(cameraDirection);  

                CameraDevice.Instance.Start();  
                i = 0;  

            }  
   }  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: