Unity3D黑屏截图
本文关键字:Unity3D | 更新日期: 2023-09-27 18:31:36
我正在使用截图进行截图
Texture2D tex = new Texture2D(width,height);
Rect textureRect = new Rect(0,0,width,height);
tex.ReadPixels(textureRect,0,0);
tex.Apply();
它工作正常。但是,当我在相机上应用图像效果(例如 Unity 标准资源中提供的模糊或泛光)时,捕获的屏幕截图是黑色的。我不明白为什么。有人可以帮助我吗?
使用 Application.CaptureScreenshot 截取屏幕截图。
Application.CaptureScreenshot("Screenshot.png");
如果你想在游戏中显示它,我建议使用渲染纹理,我认为从Unity5开始就可以免费使用。
您应该
尝试在任何组件中OnPostRender()
调用它。
您也可以在以下位置运行捕获代码: Camera.OnRenderImage(RenderTexture,RenderTexture)
此方法由 Unity3D 引擎调用,所有渲染完成后,屏幕上有精美的图像。
您需要为其创建组件并将其附加到相机。
http://docs.unity3d.com/ScriptReference/Camera.OnRenderImage.html