summaryrefslogtreecommitdiff
path: root/xor_solid_fullmask_unclipped.hlps
diff options
context:
space:
mode:
Diffstat (limited to 'xor_solid_fullmask_unclipped.hlps')
-rw-r--r--xor_solid_fullmask_unclipped.hlps43
1 files changed, 43 insertions, 0 deletions
diff --git a/xor_solid_fullmask_unclipped.hlps b/xor_solid_fullmask_unclipped.hlps
new file mode 100644
index 0000000..ad2b57d
--- /dev/null
+++ b/xor_solid_fullmask_unclipped.hlps
@@ -0,0 +1,43 @@
+/* Automatically generated file; do not edit */
+
+/* xor shader for solid with fullmask and unclipped */
+
+SamplerState point_sample;
+
+Texture2D<uint4> output : register(t2);
+
+cbuffer colors :register(b0) {
+ uint4 foreground;
+ uint4 background;
+ uint4 planemask;
+}
+
+cbuffer tile_stats :register(b1) {
+ uint4 plane;
+ uint2 tile_wh;
+}
+
+struct PS_INPUT {
+ float2 tile_pos : TEXCOORD0;
+ float2 clip_pos : TEXCOORD1;
+ float2 out_pos : TEXCOORD2;
+};
+
+uint4 main(PS_INPUT input) : SV_TARGET
+{
+ uint4 color;
+
+ // Load input color
+ color = foreground;
+
+ // Load output color
+ int3 pos;
+ pos.xy = input.out_pos.xy;
+ pos.z = 0;
+ uint4 out_color = output.Load(pos);
+
+ // rop
+ color = color ^ out_color;
+
+ return color;
+}