Если использовать ScreenCapture.CaptureScreenshot, то сложнее управлять процессом съёмки, в кадр могут попасть лишние слои, будут фризы при загрузке картинки обратно с диска, больше потребление памяти. Правильнее всего делать это с помощью
Camera.Render и
RenderTexture, при такой схеме можно включать/выключать постэффекты, проще управлять разрешением скриншота и отображать превью в интерфейсе. В нужный момент просто создаёте рендер-текстуру, втыкаете её в
Camera.targetTexture, вызываете Render и возвращаете старое значение targetTexture. Всё, после этого у вас есть текстура, которую можно вывести на экран с помощью компонента
RawImage.
Чтобы сохранить текстуру на диск, её нужно сначала сконвертировать в Texture2D с помощью
Texture2D.ReadPixels, а потом закодировать в нужный формат вызвав
ImageConversion.EncodeToPNG или
ImageConversion.EncodeToJPG. Из коробки Unity умеет сохранять картинки на мобилках только в
Application.persistentDataPath, для доступа к галерее нужен плагин, в AssetStore их полно, некоторые умеют даже сохранять сразу рендер-текстуру.