Unity 摄像头教程之 全屏打开后置并设置分辨率
1、打开Unity,新建一个空工程,然后在场景中铺满Canvas添加RawImage,具体如下图


2、在工程中,新建一个脚本OpenCamera,双击打开进行编辑,具体如下图

3、OpenCamera 脚本的具体代码和代码说明如下图


4、OpenCamera 脚本的具体内容如下:
using System.Collections;
using UnityEngine;
using UnityEngine.UI;
public class OpenCamera : MonoBehaviour
{
public RawImage rawImage;
private WebCamTexture webCamTexture;
private Vector2 resolution = new Vector2(1280, 720);
private int fps = 60;
// Use this for initialization
void Start()
{
StartCoroutine(OpenBGCamera());
}
IEnumerator OpenBGCamera()
{
Debug.Log("Test");
//获取摄像头权限
yield return Application.RequestUserAuthorization(UserAuthorization.WebCam);
if (Application.HasUserAuthorization(UserAuthorization.WebCam))
{
//停止正在使用的摄像头
if (webCamTexture != null)
{
webCamTexture.Stop();
}
//判断时候有摄像头
if (WebCamTexture.devices.Length != 0)
{
//new一个后置摄像头并且设置分辨率和FPS,渲染到UI上
webCamTexture = new WebCamTexture(WebCamTexture.devices[0].name, (int)resolution.x, (int)resolution.y, fps);
rawImage.texture = webCamTexture;
webCamTexture.Play();
}
}
}
}
5、脚本编译正确,回到Unity,把脚本挂载上去,具体如下图

6、在顶部菜单栏 File—BuildSettings,点击打开,切换成移动端,并且设置屏幕不自动旋转,然后根据手机进行设置方向,方向不同会是画面颠倒,不要紧,根据情况更换 Orientation 即可,具体如下图


7、编译打包,手机上运行结果如下如

