unity怎么添加camera Unity Android 之 移动端打开相机拍照并保存
大家好,我是云百科的客服小柏,我来为大家解答以上问题。unity怎么添加camera,Unity,Android,之,移动端打开相机拍照并保存很多人还不知道,现在让我们一起来看看吧!
解答:
1、 打开团结,新建一个空工程,具体如下图
2、 在场景中添加一个原始图像(渲染相机图像),并且铺满画布,然后把帆布的渲染模式设置为屏幕空间-摄像机,其中渲染相机为主摄像头,具体如下图
3、 在工程中新建一个脚本,可以命名为"OpenCameraAndSaveImage",双击或者右键打开脚本进行编辑,具体如下图
4、 "OpenCameraAndSaveImage"的具体代码和代码说明如下图
5、 "OpenCameraAndSaveImage"脚本具体内容如下:
6、 使用系统。收藏;
7、 使用系统。木卫一;
8、 使用联合工程
9、 使用联合工程.UI;
10、 公共类OpenCameraAndSaveImage:MonoBehaviour{
11、 //用户界面相关参数
12、 公共原始图像
13、 公共按钮按钮_拍照
14、 //摄像机图片参数
15、 私有网络摄像头纹理网络摄像头纹理
16、 //使用它进行初始化
17、 voidStart(){
18、 //打开相机
19、 StartCoroutine('opencamera');
20、 //按钮绑定点击事件
21、 按钮_拍照。onclick。添加监听器(takepotoandsaveimage_Button);
22、 }
23、 ///摘要
24、 ///使用协程打开相机函数
25、 ////摘要
26、 ///返回/返回
27、 IEnumeratorOpenCamera(){
28、 //申请相机权限
29、 退货申请请求用户授权(用户授权.网络摄像头);
30、 //判断是否有相机权限
31、 如果(应用hasuserauthorization(用户授权.网络摄像头)){
32、 //获取相机设备
33、 网络摄像头设备[]网络摄像头设备=网络摄像头纹理。设备;
34、 //判断是否有相机设别
35、 if(webCamDevices!=空网络摄像机设备。长度0){
36、 //把0号设备(移动端后置摄像头)名称赋值
37、 stringwebCamName=webCamDevices[0].姓名;
38、 //设置相机渲染宽高,并运行相机
39、 webCamTexture=newwebCamTexture(webCamName,Screen.width,Screen。身高);
40、 网络摄像头纹理.play();
41、 //把获取的图像渲染到画布上
42、 原始图像。texture=webCamTexture
43、 }
44、 }
45、 }
46、 ///摘要
47、 ///拍照保存函数的包装接口
48、 ////摘要
49、 voidtakephotoandsaveimage_Button()
50、 {
51、 //调用拍照保存函数
52、 takepotoandsaveimage(webCamTexture);
53、 }
54、 ///摘要
55、 ///保存图片的接口函数
56、 ////摘要
57、 ///paramname='tex'/param
58、 voidtakephotoandsaveimage(WebCamTexturetex){
59、 //新建一个Texture2D来获取相机图片
60、 //然后把图片转成使用联合图象专家组文件交换格式存储的编码图像文件扩展名格式的字节
61、 Texture2Dtexture2D=新Texture2D(tex.width,tex.height,TextureFormat.RGBA32,真);
62、 纹理2D.设定像素32(特克斯.getpixels32());
63、 纹理2D.apply();
64、 byte[]imagebytes=texture2dencodeojpg();
65、 //判断图片字节是否为空
66、 if(imageBytes!=空图像字节.长度0){
67、 //判断机器人平台,进行对应路径设置
68、 字符串保存路径;
69、 字符串平台路径=应用程序。流式资源路径“/MyTempPhotos”;
70、 #如果UNITY_ANDROID!UNITY_EDITOR
71、 平台路径='/SD卡/DCIM/MyTempPhotos';
72、 #endif
73、 //如果文件夹不存在,就创建文件夹
74、 如果(!目录。存在(平台路径)){
75、 目录CreateDirectory(平台路径);
76、 }
77、 //保存图片
78、 保存路径=平台路径'/'时间。德尔塔时间.jpg';
79、 文件WriteAllBytes(保存路径,图像字节);
80、 }
81、 }
82、 }
83、 脚本编译正确,回到一致中,在帆布添加一个按钮,用来进行拍照保存图片的触发按钮,布局如下图
84、 把脚本挂载到主摄像机上,并对应给脚本赋值,具体如下图
85、 打开"文件"-"构建设置",把当前的场景添加进去,然后点击播放器设置.具体如下图
86、 在其他设置中的写权限设置为外部(标清卡),具体如下图
87、 然后,连接手机,打包安装到手机上,运行点击"拍照"按钮,即可实现机器人端打开相机,进行拍照保存,具体如下图
本文到此讲解完毕了,希望对大家有帮助。
免责声明:本文由用户上传,与本网站立场无关。财经信息仅供读者参考,并不构成投资建议。投资者据此操作,风险自担。 如有侵权请联系删除!
-
最近收到一位患者的留言,说自己这几天总感觉肛门有下坠胀感,特别难受,上网一查,好多信息都指向癌症,这可...浏览全文>>
-
腹痛、腹泻总反复!可能是小肠、大肠在抗议。基于症状特征区分小肠疾病与大肠疾病的具体差异分析:一、核心症状...浏览全文>>
-
近日,中国中医药信息学会肛肠分会·肿瘤分会·治未病分会·河北名医学会肛肠分会·盆底与便秘分会·河北省中...浏览全文>>
-
安徽蚌埠的长安启源E07作为一款备受关注的新能源车型,其价格和配置一直是消费者热议的话题。如果你正考虑入手...浏览全文>>
-
近年来,随着新能源汽车市场的快速发展,插电式混合动力车型逐渐成为消费者关注的焦点。生活家PHEV作为一款备...浏览全文>>
-
在2025款生活家PHEV车型正式上市之前,提前了解相关费用明细对于购车者来说至关重要。这款插电式混合动力车型...浏览全文>>
-
大众途昂作为一款中大型SUV,凭借其宽敞的空间和强劲的动力配置,在市场上一直拥有不错的口碑。对于计划购买20...浏览全文>>
-
阜阳地区的长安启源Q05 2025款车型凭借其时尚的外观设计和丰富的配置,吸引了众多消费者的关注。这款车型作为...浏览全文>>
-
阜阳揽巡作为一款备受关注的中型SUV,凭借其豪华的配置和超值的价格吸引了众多消费者的目光。这款车不仅在外观...浏览全文>>
-
淮南长安启源A07自上市以来便凭借其卓越的性能和亲民的价格赢得了众多消费者的青睐。作为2025款的新车型,它在...浏览全文>>