本文将带你了解Android应用开发之unity打开移动摄像头,并自适应屏幕显示摄像头数据。兼容android和ios,希望本文对大家学Android有所帮助。

跨平台并自适应显示摄像头数据新建工程并建立UI

raw_Image的参数设置如下:

设置两个Canvas_UI和Canvas_Web的CamRender Mode都为Screen   Space - Camera,并将Camera拖入。设置Canvas_UI的层级高于Canvas_WebCam

编写脚本,并将脚本挂在Canvas_WebCam

usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;usingUnityEngine.UI;

publicclassMT_Camera:MonoBehaviour{TransformuiRoot;TransformcamRoot;RawImagecam_Video;Toggletog_togCamera;WebCamTexturecamTexture;publicintw_cam=640;publicinth_cam=480;privatevoidAwake(){uiRoot=GameObject.Find("Canvas_UI").transform;camRoot=GameObject.Find("Canvas_WebCam").transform;}privatevoidStart(){cam_Video=camRoot.Find("raw_Image").GetComponent();tog_togCamera=uiRoot.Find("tog_ChangeCam").GetComponent();transform.GetComponent().referenceResolution=new   Vector2(Screen.width,Screen.height);tog_togCamera.onValueChanged.AddListener(changeCam);tog_togCamera.isOn=true;///自适应屏幕分辨率显示摄像头数据//宽度不变,缩放高度自适应显示摄像头数据//cam_Video.rectTransform.sizeDelta=newVector2(h_cam*Screen.height/w_cam,Screen.width);//宽度不变,缩放宽度自适应显示摄像头数据cam_Video.rectTransform.sizeDelta=newVector2(Screen.height,w_cam*Screen.width/h_cam);}voidchangeCam(boolisOn){StartCoroutine(CallCamera(isOn));}IEnumeratorCallCamera(boolisOn){yieldreturnApplication.RequestUserAuthorization(UserAuthorization.WebCam);if(Application.HasUserAuthorization(UserAuthorization.WebCam)){if(camTexture!=null)camTexture.Stop();WebCamDevice[]cameraDevices=WebCamTexture.devices;stringdeviceName="";for(inti=0;i///翻转plane,正确显示摄像头数据//Ifsettotrueisturn.publicvoidTurnCam(boolisOn){#ifUNITY_IOS||UNITY_IPHONEif(!isOn)cam_Video.rectTransform.localEulerAngles=newVector3(180,0,90);elsecam_Video.rectTransform.localEulerAngles=newVector3(0,0,-90);#elifUNITY_ANDROIDif(!isOn)cam_Video.rectTransform.localEulerAngles=newVector3(180,180,90);elsecam_Video.rectTransform.localEulerAngles=newVector3(0,180,90);#endif}}

分别发布到xcode和android测试。

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之Android频道!

unity android屏幕自适应,Android应用开发之unity打开移动摄像头,并自适应屏幕显示摄像头数据。兼容android和ios...相关推荐

  1. adb 查看屏幕大小_Android应用开发之adb命令如何获取android手机屏幕分辨率

    本文将带你了解Android应用开发之adb命令如何获取android手机屏幕分辨率,希望本文对大家学Android有所帮助 #### 1.   通用方法: adb shell dumpsys win ...

  2. android的动态注册,Android应用开发之BroadcastReceiver(广播)的静态注册和动态注册 --Android开发...

    本文将带你了解Android应用开发之BroadcastReceiver(广播)的静态注册和动态注册 --Android开发,希望本文对大家学Android有所帮助 BroadcastReceiver ...

  3. android 判断byte值_Android开发之UDP可靠性传输

    轩羽:Android开发之UDP​zhuanlan.zhihu.com 在这一篇文章里,小编说到UDP是不可靠的,故,我们要自己写一套协议,来使UDP实现可靠性传输,这里,小编和小编的小伙伴一起,写了 ...

  4. Unity开发之-Unity入门简介(近万字攻略)

    前言 大家好,我是一个Unity的程序员,从这篇开始我会持续更新学习Unity的基本,去帮助想要学习unity的小伙伴,有兴趣的同学可以跟着我一起学习Unity,下面,我们将要开始了解Unity以及想 ...

  5. [Unity3D]Unity3D游戏开发之Unity与Android交互调用研究

    各位朋友,大家好,我是秦元培,欢迎大家关注我的博客,我的博客地址是blog.csdn.net/qinyuanpei.在前一篇文章中,我们研究了Android平台上Unity3D的手势操作并在之前的基础 ...

  6. android蓝牙4.0(BLE)开发之ibeacon初步

    一个april beacon里携带的信息如下 ? 1 <code class=" hljs ">0201061AFF4C0002159069BDB88C11416BAC ...

  7. android ndk 多线程mk,NDK开发之Android.mk文件编写

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 现在我们把android稍微写复杂些.在项目根目录下创建一个lib1文件夹 结构如图: test10.h和test11. ...

  8. Android开发之APP打开小程序后小程序无法返回APP,无法打开APP,launchApp无法返回app的原因

    Android打开小程序可以看我上篇文章介绍:Android打开小程序 我这边已经成功打开小程序了参数也传递过去了,现在就是无论如何点击返回APP都没有反应,也没用走微信页面WXEntryActivi ...

  9. Android studio中的NDK开发之NDK环境变量的配置(图文教程)

    为什么总是图文教程? 因为本人对抽象事物联想不到位,更喜欢具体能看到的东西,简单明了,一目了然,更是一步到位!如下图: 第一步找到你通过android studio下载好的NDK目录,如果不知道下载到 ...

最新文章

  1. solr4.5分组查询、统计功能介绍
  2. mysql or会用到索引吗_mysql or条件可以使用索引而避免全表
  3. QML的import目录爬坑记录
  4. Hive问题汇总记录,持续更新
  5. InternetCheckConnection 通过尝试连接特定的网址,可以用来判断目前机器是否接通外网
  6. nginx的源码编译及相关文件配置
  7. 苹果id登陆不上去怎么回事_创建苹果id是出现请联络iTunes支持人员完成交易是怎么回事?...
  8. rtthread iic读取M24C64的测试程序
  9. 毕业论文页码格式制作
  10. MySql中的minus用法
  11. centos7常用快捷键
  12. CSP-S 蒟蒻啊qaq
  13. 华为网络设备查询系统时间及修改系统时间命令
  14. 【渝粤教育】电大中专机械设计基础作业 题库
  15. 阿里云oss部署静态网页
  16. 对于环形组网次优和来回路径不一致的解决方法
  17. VMware Horizon Client 各个免费版本下载
  18. 服务器显示文件后缀名,获取文件后缀名
  19. 基于模型预测人工势场的船舶运动规划方法,考虑复杂遭遇场景下的COLREG(Matlab代码实现)
  20. ftrack获得2亿美金支持

热门文章

  1. 2021-2025年中国单相静态电能表行业市场供需与战略研究报告
  2. 活到老,学到老!各大厂数据库技术解决方案来了
  3. 从 Web 图标演进历史看最佳实践
  4. Google 高薪争夺 Rust 人才,将用 Rust 重构关键组件!
  5. SUSE梁胜:程序员涨薪飞快,做开源贡献者没有意义
  6. 对标鸿蒙 OS,Google 下一代操作系统 Fuchsia 源码公开!
  7. 你还在为查询滑动窗口最大值发愁吗?点开看最高效率解法!
  8. 双十一的秒杀场景是如何设计的?
  9. C++20 即将于年底发布,C++ 23 提上日程!
  10. 以太坊 2.0、分片、DAG、链下状态通道……概述区块链可扩展性的解决方案!