unity 相机截图

/// <summary>

/// 针对相机的截图

/// </summary>

public void CameraScreenShot(){

Rect rect = new Rect(0,0,Screen.width,Screen.height);

RenderTexture renderTexture = RenderTexture.GetTemporary((int)rect.width,(int)rect.height,0, RenderTextureFormat.ARGB32);

#region 默认内置渲染管线或者urp渲染管线(相机都是Base模式),多个相机截图的顺序是depth越小越在前渲染,如下,最终就是两个相机的画面结合

// Camera.main.targetTexture = renderTexture;

// Camera.main.Render();

// camera.targetTexture = renderTexture;

// camera.Render();

#endregion

#region urp渲染管线(base和overlay两种相机) 多个相机截图的顺序是先渲染overlay的相机再是Base的相机。如下,最终就是两个相机的画面结合

// camera.targetTexture = renderTexture;

// camera.Render();

Camera.main.targetTexture = renderTexture;

Camera.main.Render();

#endregion

RenderTexture.active = renderTexture;

Texture2D texture2D = new Texture2D((int)rect.width,(int)rect.height,TextureFormat.ARGB32,false);

texture2D.ReadPixels(rect,0,0);

texture2D.Apply(false);

Camera.main.targetTexture = null;

camera.targetTexture = null;

RenderTexture.active = null;

image.sprite = Sprite.Create(texture2D,rect,new Vector2(0.5f,0.5f));

RenderTexture.ReleaseTemporary(renderTexture);

}

在这里只是记录一下多相机截图并不包含保存、加入文字水印等方式

相关推荐
LONGZETECH1 小时前
无人机实训高成本痛点解法:虚拟仿真实现 70% 耗材损耗下降
大数据·算法·unity·架构·无人机
五仁烧饼14 小时前
Unity Addressables 静默资源策略
游戏·unity·addressables
ue星空21 小时前
【Godot】更换编辑器外观主题
编辑器·游戏引擎·godot
fanfan_hongyun1 天前
unity 与cad 坐标系映射
unity·游戏引擎
神码编程1 天前
【Unity】 HTFramework框架(七十)MultiChoiceDropdown可多选的下拉菜单
unity·游戏引擎·ugui·dropdown·下拉菜单
ue星空1 天前
Godot 2D像素游戏移动抖动、模糊问题解决方案
游戏·游戏引擎·godot
淡海水1 天前
15-07-YooAsset面试篇-Unity性能优化与内存管理
java·unity·面试·性能优化·c#·游戏引擎
ue星空1 天前
【Godot】AudioStreamPlayer2D音频播放
游戏引擎·音视频·godot
AttosTek1 天前
阿秒科技SWIR1503BU相机拍摄亚稳态氦原子在磁光阱中的俘获图象
数码相机
zhchyun20082 天前
# 【Unity UI 进阶】仿 Element UI 打造企业级 Unity UI 组件库(03)
unity