微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 在Unity中显示实时摄像头

我有一个关于Unity的问题.我希望以前没有回答过.
我想将相机(如高清摄像头)连接到我的电脑,视频输入应显示在Unity场景中.可以把它想象成一个虚拟电视屏幕,它可以实时显示相机所看到的内容.我怎样才能做到这一点?谷歌没有指出我正确的方向,但也许我只是无法正确查询;)

我希望你明白我的意思.

解决方法

是的,这当然是可能的,幸运的是Unity3D实际上支持它开箱即用.您可以使用 WebCamTexture查找网络摄像头并将其渲染为纹理.从那里,您可以选择在3D场景中的任何内容上渲染纹理,当然也包括虚拟电视屏幕.

它看起来很自我解释,但下面的代码应该让你开始.

列出并打印出它检测到的已连接设备:

var devices : WebCamDevice[] = WebCamTexture.devices;
for( var i = 0 ; i < devices.length ; i++ )
    Debug.Log(devices[i].name);

连接到连接的网络摄像头并将图像数据发送到纹理:

WebCamTexture webcam = WebCamTexture("NameOfDevice");
renderer.material.mainTexture = webcam;
webcam.Play();

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐