资源简介
在unity3d里可以打开usb连接的外置摄像头
在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头
在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头在unity3d里可以打开usb连接的外置摄像头
代码片段和文件信息
using UnityEngine;
using System.Collections;
public class CamController : MonoBehaviour {
public string deviceName;
WebCamTexture tex;//接收返回的图片数据
/// 实现IEnumerator接口,这里使用了一个协程,相当于多线程。
/// 这里是调用摄像头的方法。
IEnumerator test()
{
yield return Application.RequestUserAuthorization(UserAuthorization.WebCam);//授权
if (Application.HasUserAuthorization(UserAuthorization.WebCam))
{
WebCamDevice[] devices = WebCamTexture.devices;
deviceName = devices[0].name;
//设置摄像机摄像的区域
tex = new WebCamTexture(deviceName 400 300 12);
tex.Play();//开始摄像
}
}
//这段代码就是Unity调用摄像头的方法,图片数据就保存在tex中。
//下面看这段怎么使用上面的那段代码。
void OnGUI()
{
//开始按钮
if (GUI.Button(new Rect(0 0 150 150) “open“))
{
//调用启动那个协程,开启摄像头
StartCoroutine(test());
}
//暂停
if(GUI.Button(new Rect(020010030)“pause“))
{
tex.Pause();
//这个方法就是保存图片
StartCoroutine(getTexture2d());
}
//重启开始
if (GUI.Button(new Rect(0 300 100 30) “restart“))
{
tex.Play();
}
/*if (GUI.Button(new Rect(100 0 100 30) “摄像“))
{
//开始摄像,摄像就是一系列的图片集合
//StartCoroutine(getTexture2dshexiang());
}*/
if(tex!=null)
GUI.DrawTexture(new Rect(200 200 200 180) tex);
}
//保存图片是一个难点,找了半天,才发现这个方法来实现
/// 获取摄像头截取的图片,这里也是一个协程
IEnumerator getTexture2d()
{
yield return new WaitForEndOfframe();
Texture2D t = new Texture2D(200 180);//要保存图片的大小
//截取的区域
t.ReadPixels(new Rect(200 320 200 180) 0 0 false);
t.Apply();
//把图片数据转换为byte数组
byte[] byt = t.EncodeToPNG();
//然后保存为图片
System.IO.File.WriteAllBytes(Application.dataPath + “/shexiang/“ + Time.time + “.jpg“ byt);
//File.WriteAllBytes(Application.dataPath + “/shexiang/“ + Time.time + “.jpg“ byt);
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2291 2015-08-27 11:25 CamController.cs
- 上一篇:二极管系列封装库
- 下一篇:无线充电标准QI中文版
相关资源
- unity3d 源代码 Space Game Starter Kit 太空射
- Unity3D Lightmap贴图、加载、替换与切换
- unity3d试衣源码
- unity3d的模型导入与脚本练习
- Unity3D手机游戏开发金玺曾书籍+光盘
- unity3d通透材质shader
- UGUI 动态加载内容的 dropdown 控件
- Unity3d脚本控制动画开关门代码
- Unity3D ArchVizPRO Interior Vol.01 - Vol.06 合集
- 基于Unity3D的三维数字校园漫游系统
- unity游戏开发教程.txt
- Unity3d动态创建excel并写入数据
- Unity3D模型-喷火龙
- 延迟消息机
- Unity3D.4.0.0简体中文汉化补丁
- KinectWrapperPackage for KinectSDK1.6
- unity3d光影插件
- Unity3D内置Shader源码与详解解释文档
- Unity3D《最后一战》全套完整源代码
-
unity3d读取xm
l插件Mono.xm l - Unity3d背包物品拖拽
- 无限滚动TableView
- Unity3D使用socket通讯源码
- 塔防游戏源码
- Unity3D插件-- LitJson.dll
- 2018unity3d 特效资源包大合集
- Unity3D读取Excel工具
- unity3d RPG游戏《外星人》完整
- unity3d实现的弹幕功能
- Unity3D中Blendshapes之间的过渡方式
评论
共有 条评论