Просмотр исходного кода

libobs: Update default draw effect to also provide D65P3 conversion

PatTheMav 1 год назад
Родитель
Сommit
cb634b9875
1 измененных файлов с 17 добавлено и 0 удалено
  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);
+    }
+}