WebCamTexture报错

发布时间:2023年12月18日

使用WebCamTexture把相机的画面显示到 RawImage 上

using UnityEngine;
using UnityEngine.UI;

public class WebCamTextureTest : MonoBehaviour
{
    public RawImage RawImage;
    
    private WebCamTexture _webCamTexture;
    private Color32[] _colorBuff;
    private Texture2D _texture2D;
    
    void Start()
    {
        WebCamDevice[] devices = WebCamTexture.devices;
        int length = devices.Length;
        if (length > 0)
        {
            _webCamTexture = new WebCamTexture();
        }
        _webCamTexture.Play();
    }
    
    void Update()
    {
        if (_webCamTexture != null && _webCamTexture.isPlaying && _webCamTexture.didUpdateThisFrame)
        {
            int width = _webCamTexture.width;
            int height = _webCamTexture.height;

            if (_colorBuff == null)
            {
                _colorBuff = new Color32[width * height];
            }
            
            _webCamTexture.GetPixels32(_colorBuff);
            
            if (_texture2D == null)
            {
                _texture2D = new Texture2D(width, height, TextureFormat.RGBA32, false);
            }
            _texture2D.SetPixels32(_colorBuff);
            _texture2D.Apply();
            RawImage.texture = _texture2D;
        }
    }
}

执行 WebCamTexture.Play() 报下面的错误
在这里插入图片描述
Could not start graph
Could not pause pControl

这两个错是因为摄像头被占用,需要检查代码中其他调用摄像头的地方

文章来源:https://blog.csdn.net/sinat_34014668/article/details/135064777
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。