소스 검색

libobs: Update default draw effect to also provide D65P3 conversion

PatTheMav 1 년 전
부모
커밋
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);
+    }
+}