I believe the reason colors are incorrect is because IVROverlay::SetOverlayGamma doesn't seem to actually exist in the OpenVR API. I believe it is related to this issue.
To quote the API:
Sets/gets the gamma of the overlay quad. Use 2.2 when providing a texture in linear color space. By default overlays are rendered with 1.0 gamma.
But because I cannot actually call SetOverlayGamma, I cannot set the Overlay to draw in linear color space, and I believe this is causing the overlay to render too darkly, and possibly why the background will not become fully transparent, but possibly unrelated.
I believe the reason colors are incorrect is because IVROverlay::SetOverlayGamma doesn't seem to actually exist in the OpenVR API. I believe it is related to this issue.
To quote the API:
But because I cannot actually call SetOverlayGamma, I cannot set the Overlay to draw in linear color space, and I believe this is causing the overlay to render too darkly, and possibly why the background will not become fully transparent, but possibly unrelated.