Unity摄像机拍照并显示在小窗口里(RenderTexture和RawImage将摄像机图像渲染到GUI屏幕上小图显示)
Unity摄像机拍照并显示在小窗口里(RenderTexture和RawImage将摄像机图像渲染到GUI屏幕上小图显示)
- 1.实现效果和实现思想
1.实现效果和实现思想
实现效果:
本文使用飞机模型实现此功能。
实现思想:
01.在 hierarchy创建RawImage 和Toggle,并为它们命名为如下的名字。
02.在assest中创建一个RenderTexture,并为其命名为render。
03.在飞机的预制体下面创建一个相机,命名为FollowCamera
04.编写脚本cameraDisplay,编写完成之后挂在isRawImage上面
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;public class cameraDisplay : MonoBehaviour
{public RenderTexture rt;public Camera cam;private RawImage UIImage;Toggle isRawCamera;void Start(){if (isRawCamera == null){isRawCamera = GetComponent<Toggle>();}isRawCamera.isOn = false;if (UIImage == null){UIImage = GameObject.Find("RawImage").GetComponent<RawImage>();}UIImage.enabled = false;UIImage.texture = null;}void Update(){if (Input.GetKeyUp(KeyCode.F)){if (isRawCamera.isOn == false){isRawCamera.isOn = true;}else{isRawCamera.isOn = false;}}if (isRawCamera.isOn == true){UIImage.enabled = true;UIImage.texture = rt;}else{UIImage.enabled = false;UIImage.texture = null;}}
}
05.将render拉到Rt上,相机也拖拽到Cam里。
06.摄像机的TargetTexture也要将render拖拽过去!!!(注意,如果不拖过去,显示的小窗口中将会是一片黑色或者并不是动图!如下图)
实现截图:
以上,本文是看着
https://blog.csdn.net/weixin_39549161/article/details/99303088
这个链接做的。
我踩坑的点:
01.添加了挂在飞机上面的摄像机之后,Game只显示FollowCamera的画面,不在显示mainCamera的画面了。这种情况下你要去查看2个相机的Depth属性。Depth属性值越大,谁就先显示在Game当中。
02.忘了将摄像机的TargetTexture属性也要将render拖拽过去,以至于找了半天,小窗口显示的还是黑屏。
Unity摄像机拍照并显示在小窗口里(RenderTexture和RawImage将摄像机图像渲染到GUI屏幕上小图显示)相关推荐
- 登录屏幕上不要显示上次登录的用户名 图文教程[server 2003/2008]
在进行VPS或者远程主机管理时, 通常会在登陆界面上一次登陆的用户名信息, 而这个对于不怀好意的人也提供一个有用的信息, 也就是它只要破解这个用户名所用的密码即可, 至于破解方法相信在网上有N种了, ...
- 汉字在屏幕上的显示过程以及乱码的原因
一.计算机中的显示原理 要想在计算机的显示器上显示文字,首先你得写一个程序,这个程序的任务就是就是把文字的显示信息发给显卡,显示信息包括在这个屏幕上的输出位置.字的大小等等.然后显卡就知道怎么显示这个 ...
- 多屏幕切换到但屏幕,有软件无法在当前屏幕上无法显示
长春子问: 多屏幕切换到但屏幕,有软件无法在当前屏幕上无法显示,重启也不好用.咋办? 释然答: 参看 双屏切换单屏,之前在另一显示器显示的软件窗口现无法显示解决最简单的方法_Yum_Lon ...
- c语言在屏幕上显示字母,C语言在屏幕上的显示内容
C语言是一门通用计算机编程语言,那么大家知道C语言在屏幕上的显示内容是什么呢?下面一起来看看! 我们有两种方式从计算机获得信息:一是看屏幕上的文字.图片.视频等,二是听从喇叭发出来的声音. 让喇叭发出 ...
- 写出在桌面上显示计算机的操作步骤,怎样让便签在Windows电脑桌面屏幕上一直显示?具体操作步骤是什么...
原标题:怎样让便签在Windows电脑桌面屏幕上一直显示?具体操作步骤是什么 对Windows操作系统比较熟悉的人,应该都知道:Win7及其以上版本的电脑上自带有便签软件,在"程序" ...
- ppt演示,怎么变看备注,变演示,而投影的屏幕上不显示备注?
ppt演示,怎么变看备注,变演示,而投影的屏幕上不显示备注? 1必须要有两个以上的显示器,否则 2正式演示之前,自己测试一下,每一个ppt版本,操作不一样.
- Android对话框的高级设置《二》设置对话框按钮的透明度和对话框的在屏幕上的显示位置
话不多说,代码: XML布局文件,只是一个Demo,所以就一个Button. <RelativeLayout xmlns:android="http://schemas.android ...
- 在lcd屏幕上窗口显示一个bitmap_SmartDrop——LED/LCD大屏内容投屏管理软件
产品简介 SmartDrop是飞画推出的一款针对拼接大屏(LCD/LED)进行内容投屏管理的播控软件,支持LCD/LED两种应用环境,用户可以根据屏幕的使用场景进行选择安装LCD-Drop或LED-D ...
- LED屏幕上轮流显示三色条纹、彩虹、四叶草(数组与内存映射的采用)
因其粤嵌的开发板的显示屏为800*480像素,显示三色条纹.彩虹.四叶草,故进行数学的基础计算,然后遍历800*480,赋值颜色 数组法:构建一个480*800的二维数组,加上数学关系暴力.(代码的函 ...
最新文章
- java怎么获取传入路径_java如何获取jsp页面上传的文件路径
- Python---实验九
- 6-2 在一个数组中实现两个堆栈 (8 分)
- html双箭头菜单,CSS常用样式之绘制双箭头的示例代码
- python机器学习之数据集(查看数据,划分训练集、测试集)
- Setup Factory 点击uninstall.exe Invalid start mode : archive filename
- js实现网页进度条效果
- 关于阅读论文的一些感想
- oracle 正序 倒序 排列
- java.sql.SQLException: No suitable driver found for jdbc
- 一个软件网络连接异常_拥有苹果电脑后,最应该预装的7款Mac应用软件
- nagios的nsca被动模式及自动添加nsca服务
- 交换机、路由器、网关的概念,并知道各自的用途
- 易语言调用大漠插件实现多线程后台绑定游戏窗口和打怪
- JAVA面试题(选择题)
- 网络爬虫信息之实战淘宝书包信息爬取14
- Visual Micro for Microsoft Visual Studio 2022.08
- 基于springboot的通知反馈系统
- 计算机大一学生笔记本电脑选择
- 【翻译】如果软件工程需求旺盛,但为什么找一份软件工程工作这么难?