Jelajahi Sumber

libobs: Update default draw effect to also provide D65P3 conversion

PatTheMav 1 tahun lalu
induk
melakukan
cb634b9875
1 mengubah file dengan 17 tambahan dan 0 penghapusan
  1. 17 0
      libobs/data/default.effect

+ 17 - 0
libobs/data/default.effect

@@ -136,6 +136,14 @@ float4 PSDrawTonemapPQ(VertInOut vert_in) : TARGET
 	return rgba;
 }
 
+float4 PSDrawD65P3(VertInOut vert_in) : TARGET
+{
+    float4 rgba = image.Sample(def_sampler, vert_in.uv);
+    rgba.rgb = srgb_nonlinear_to_linear(rgba.rgb);
+    rgba.rgb = d65p3_to_rec709(rgba.rgb);
+    return rgba;
+}
+
 technique Draw
 {
 	pass
@@ -252,3 +260,12 @@ technique DrawTonemapPQ
 		pixel_shader  = PSDrawTonemapPQ(vert_in);
 	}
 }
+
+technique DrawD65P3
+{
+    pass
+    {
+        vertex_shader = VSDefault(vert_in);
+        pixel_shader  = PSDrawD65P3(vert_in);
+    }
+}