shin
shin copied to clipboard
Restructure the rendering pipeline to do the blending the "wrong way"
So, apparently, entergram has fucked up gamma correctness in their engine...

They do not mark textures as being in sRGB space (but they are!) and therefore all computations happen without conversion to linear space (but they should be converted!)
Because of this I couldn't get the messagebox opacity to look quite right (to be the same as in the game)....
Alpha blending (RES = a * src + (1-a) * dst) was done in the different colorspace, so the result is different
To implement the same in our engine we would need to use texture views with differing srgb-ness, tracked at gfx-rs/wgpu#3237
Don't forget to remove extra renderpass from the movielayer
With the new-renderer branch merged in, this is done now!