unity截图保存图片
时间: 2023-12-28 11:01:37 浏览: 96
在Unity中,保存截图是一个很简单的操作。首先,我们需要在Unity的脚本中编写保存截图的代码。代码示例如下:
```csharp
using UnityEngine;
public class Screenshot : MonoBehaviour
{
// 设置截图的文件名
public string fileName = "screenshot.png";
void Update()
{
// 当用户按下指定的按键(例如空格键)时,执行截图操作
if (Input.GetKeyDown(KeyCode.Space))
{
// 获取当前屏幕的宽度和高度
int width = Screen.width;
int height = Screen.height;
// 创建一个新的2D纹理,并将屏幕内容拷贝到这个纹理中
Texture2D tex = new Texture2D(width, height, TextureFormat.RGB24, false);
tex.ReadPixels(new Rect(0, 0, width, height), 0, 0);
tex.Apply();
// 将纹理保存为PNG格式的图片
byte[] bytes = tex.EncodeToPNG();
System.IO.File.WriteAllBytes(fileName, bytes);
}
}
}
```
在这段代码中,我们首先定义了一个变量`fileName`,用来保存截图的文件名。然后在`Update`方法中,我们检测用户是否按下了空格键,如果按下了空格键,就执行截图操作。截图操作的具体步骤是:获取屏幕的宽度和高度,创建一个新的2D纹理,将屏幕内容拷贝到这个纹理中,然后将纹理保存为PNG格式的图片。
当我们把这段代码添加到一个游戏对象上之后,只需要在Unity中运行游戏,按下空格键,就可以保存当前屏幕的截图了。这样我们就可以很方便地在Unity中进行截图保存操作。
阅读全文