首先需要一个文件“System.Windows.Forms”,它在unity目录下比如“E:\Unity\unity5.6\Unity\Editor\Data\Mono\lib\mono\2.0”,往下找到文件“System.Windows.Forms”
接着需要在unity工程目录下创建一个名为“StreamingAssets”的文件夹用来存放截取的屏幕图片,如果不建立则系统会报错
最后将下列代码输入,在Update()里判断你想要截屏时的条件再执行协程,下面的是当按下鼠标左键时截屏
using UnityEngine; using System.Collections; using System.IO; public class FrameAnimation : MonoBehaviour { public Texture2D image; public int w; public int h; public float nextTime = 0.0f; public float rate = 0.3f; int i = 0; // Use this for initialization void Start() { w = Screen.width; h = Screen.height; image = new Texture2D(w, h); } // Update is called once per frame void Update() { if (Input.GetMouseButton(0)) { StartCoroutine(SaveImage(i)); } } IEnumerator SaveImage(int i) { yield return new WaitForEndOfFrame(); image.ReadPixels(new Rect(0, 0, w, h), 0, 0, true);//read pixels from screen to texture image.Apply(); byte[] bytes = image.EncodeToPNG(); File.WriteAllBytes(Application.streamingAssetsPath + "/" + i + ".png", bytes); Debug.Log("write a pic"); yield return null; } }