Three of a Climb Devlog #6: Highscore Snapshot

This time I added a highscore snapshot, like the one in Crossy Road: every new record gets a photo of the moment you died, ready to share.
How it works
When you die on a new record, the screen flashes white, a card slides up with a picture of your run, and a Share button opens the system share sheet. Here is how it's built, step by step.
1. One camera, one texture, one PNG
I added one extra camera that renders the world and the share card together, straight into a render texture. That texture is then saved as a PNG.
2. Render it exactly once
The camera stays disabled. When you die, URP renders it a single time with SubmitRenderRequest:
var request = new UniversalRenderPipeline.SingleCameraRequest(); request.destination = shareRT; RenderPipeline.SubmitRenderRequest(shareCamera, request);
3. Delay the shot
If the capture happens the instant you die, the goat is still standing. A short real-time delay catches it mid-air, upside down, which makes a much better photo:
yield return new WaitForSecondsRealtime(0.35f);
4. Screen flash
A quick white flash plus a shutter sound makes it feel like a real photo.
5. The dark capture
The first captures came out dark, with a grey watermark. The fix was changing the render texture format from R8G8B8A8_UNORM to R8G8B8A8_SRGB.
6. Sharing
The share sheet is opened with the NativeShare plugin by yasirkula, which handles Android and iOS from one call: github.com/yasirkula/UnityNativeShare.

