截图功能在游戏里还是非常常见的,这次做了一个Unity绘制人体热力图的项目,正好稍微总结一下Unity的截图问题。应该还有一种异步办法,不是很会用,期待交流。
配套资源请下载:
方法一 ScreenCapture.CaptureScreenshot(带UI)
Unity提供的截图方法,实时截取当前屏幕,这种截图方法是带UI的
//官方文档public static void CaptureScreenshot(string filename, int superSize);
ScreenCapture.CaptureScreenshot(path);
效果如下
方法二 渲染相机(无UI)
渲染摄像机看到的物体就不包含UI了,如果连天空盒也不想要可以再单设置一个摄像机。
public void PrintScreen(string path)//需要传入一个保存的路径
{
int width = 1920;
int height = 1080;
RenderTexture rt = new RenderTexture(