Unity调用外接摄像头的实例代码(C#)

  1. using UnityEngine;  
  2. using System.Collections;  
  3. using System.Threading;  
  4.   
  5. public class BtnControl : MonoBehaviour  
  6. {     
  7.     public WebCamTexture webTex;  
  8.     public string deviceName;  
  9.       
  10.     void Start()  
  11.     {  
  12.           
  13.     }  
  14.     void Update()  
  15.     {  
  16.           
  17.     }  
  18.       
  19.     //绘制按钮  
  20.     void OnGUI()  
  21.     {  
  22.         //开始按钮  
  23.         if(GUI.Button(new Rect(0,10,100,30),"click"))  
  24.         {  
  25.             //调用启动那个协程,开启摄像头  
  26.             StartCoroutine(CallCamera());  
  27.         }  
  28.         //重启开始    
  29.         if (GUI.Button(new Rect(0,80,100,30), "restart"))    
  30.         {    
  31.             webTex.Play();    
  32.         }  
  33.         //绘制摄像头的显示区域以及大小  
  34.         if(webTex!=null)  
  35.             GUI.DrawTexture(new Rect(110,0,200,200), webTex);  
  36.     }  
  37. ///  
  38. ///调用摄像头  
  39. ///  
  40.     IEnumerator CallCamera()    
  41.     {  
  42.         yield return Application.RequestUserAuthorization(UserAuthorization.WebCam);    
  43.         if(Application.HasUserAuthorization(UserAuthorization.WebCam))    
  44.         {    
  45.             WebCamDevice[] devices = WebCamTexture.devices;        
  46.             deviceName = devices[0].name;    
  47.             //设置摄像机摄像的区域    
  48.             webTex=new WebCamTexture(deviceName,10,10,10);       
  49.             webTex.Play();//开始摄像    
  50.         }    
  51.     }   
  52. }  

运行结果:

Unity调用外接摄像头的实例代码(C#)_第1张图片

你可能感兴趣的:(unity)