From 8d02c5ab217e7d035bac1e2de3d7af4a9d0d9b61 Mon Sep 17 00:00:00 2001 From: "DESKTOP-F0UGBP9\\deakl" Date: Mon, 4 Apr 2022 22:38:31 +0200 Subject: [PATCH] [GPU] Fixed size 0 point sprites enlarged to default --- .../d3d12_5_1/primitive_point_list_gs.h | 20 +++++++++---------- .../gpu/shaders/primitive_point_list.gs.hlsl | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/xenia/gpu/shaders/bytecode/d3d12_5_1/primitive_point_list_gs.h b/src/xenia/gpu/shaders/bytecode/d3d12_5_1/primitive_point_list_gs.h index a8a356706..a09f64667 100644 --- a/src/xenia/gpu/shaders/bytecode/d3d12_5_1/primitive_point_list_gs.h +++ b/src/xenia/gpu/shaders/bytecode/d3d12_5_1/primitive_point_list_gs.h @@ -161,7 +161,7 @@ or [precise(x)] r0.x, r0.y, r0.x if_nz r0.x ret endif -lt [precise(x)] r0.x, l(0.000000), v[0][16].z +ge [precise(x)] r0.x, v[0][16].z, l(0.000000) movc [precise(x)] r1.x, r0.x, v[0][16].z, CB0[0][8].w movc [precise(y)] r1.y, r0.x, v[0][16].z, CB0[0][9].w max [precise(xy)] r0.xy, r1.xyxx, CB0[0][10].xxxx @@ -273,10 +273,10 @@ ret const BYTE primitive_point_list_gs[] = { - 68, 88, 66, 67, 6, 119, - 40, 99, 120, 121, 153, 224, - 111, 77, 187, 15, 15, 245, - 37, 128, 1, 0, 0, 0, + 68, 88, 66, 67, 237, 38, + 189, 136, 81, 237, 37, 154, + 9, 132, 11, 205, 136, 149, + 67, 237, 1, 0, 0, 0, 136, 29, 0, 0, 5, 0, 0, 0, 52, 0, 0, 0, 184, 10, 0, 0, 248, 12, @@ -286,7 +286,7 @@ const BYTE primitive_point_list_gs[] = 1, 0, 0, 0, 120, 0, 0, 0, 1, 0, 0, 0, 60, 0, 0, 0, 1, 5, - 83, 71, 0, 5, 0, 0, + 83, 71, 0, 133, 0, 0, 82, 10, 0, 0, 19, 19, 68, 37, 60, 0, 0, 0, 24, 0, 0, 0, 40, 0, @@ -1070,12 +1070,12 @@ const BYTE primitive_point_list_gs[] = 31, 0, 4, 3, 10, 0, 16, 0, 0, 0, 0, 0, 62, 0, 0, 1, 21, 0, - 0, 1, 49, 0, 8, 8, + 0, 1, 29, 0, 8, 8, 18, 0, 16, 0, 0, 0, + 0, 0, 42, 16, 32, 0, + 0, 0, 0, 0, 16, 0, 0, 0, 1, 64, 0, 0, - 0, 0, 0, 0, 42, 16, - 32, 0, 0, 0, 0, 0, - 16, 0, 0, 0, 55, 0, + 0, 0, 0, 0, 55, 0, 8, 12, 18, 0, 16, 0, 1, 0, 0, 0, 10, 0, 16, 0, 0, 0, 0, 0, diff --git a/src/xenia/gpu/shaders/primitive_point_list.gs.hlsl b/src/xenia/gpu/shaders/primitive_point_list.gs.hlsl index 18afd2a7f..845e128c1 100644 --- a/src/xenia/gpu/shaders/primitive_point_list.gs.hlsl +++ b/src/xenia/gpu/shaders/primitive_point_list.gs.hlsl @@ -19,7 +19,7 @@ void main(point XeVertexPreGS xe_in[1], // Shader header writes -1.0f to point_size by default, so any positive value // means that it was overwritten by the translated vertex shader. float2 point_size = - xe_in[0].post_gs.pre_ps.point_params.z > 0.0f + xe_in[0].post_gs.pre_ps.point_params.z >= 0.0f ? xe_in[0].post_gs.pre_ps.point_params.zz : float2(xe_point_size_x, xe_point_size_y); point_size =