In a similar line of thought, you could also have transform.RotateAndTranslate(), transform.RotateTranslateAndScale(), transform.RotateAndScale(), etc, but it's often better to just have simpler methods that can be composed to do what you want. Your method (excluding the switch statement to select formats) is about 10 lines of code which isn't much, nor very complex. Ofc you could add optional parameters or overrides to SaveRenderTextureToFile to account for all possible variations, for instance a boolean to avoid stalling the GPU, a callback method to get notified when the texture has been saved, a Rect to determine which part of the render texture to crop, a size for the target texture, etc.īut if all of this can be easily done in just a few lines using existing, more atomic API methods, I'm not sure if bloating the API with an additional methods would be justified. Click to expand.What I mean is that your method covers a specific use case: synchronously read a render texture back from GPU as a texture of the same size, then save it to disk.