소스 검색

Support shader F32 to Bool reinterpretation (#1969)

gdkchan 5 년 전
부모
커밋
98d0240ce6
1개의 변경된 파일3개의 추가작업 그리고 2개의 파일을 삭제
  1. 3 2
      Ryujinx.Graphics.Shader/CodeGen/Glsl/TypeConversion.cs

+ 3 - 2
Ryujinx.Graphics.Shader/CodeGen/Glsl/TypeConversion.cs

@@ -37,8 +37,9 @@ namespace Ryujinx.Graphics.Shader.CodeGen.Glsl
             {
                 switch (dstType)
                 {
-                    case VariableType.S32: return $"floatBitsToInt({expr})";
-                    case VariableType.U32: return $"floatBitsToUint({expr})";
+                    case VariableType.Bool: return $"(floatBitsToInt({expr}) != 0)";
+                    case VariableType.S32:  return $"floatBitsToInt({expr})";
+                    case VariableType.U32:  return $"floatBitsToUint({expr})";
                 }
             }
             else if (dstType == VariableType.F32)