Procházet zdrojové kódy

Pica/VertexShader: Implement MAX instructions.

Tony Wasserka před 11 roky
rodič
revize
cd163fb59a
1 změnil soubory, kde provedl 9 přidání a 0 odebrání
  1. 9 0
      src/video_core/vertex_shader.cpp

+ 9 - 0
src/video_core/vertex_shader.cpp

@@ -197,6 +197,15 @@ static void ProcessShaderCode(VertexShaderState& state) {
                 break;
             }
 
+            case Instruction::OpCode::MAX:
+                for (int i = 0; i < 4; ++i) {
+                    if (!swizzle.DestComponentEnabled(i))
+                        continue;
+
+                    dest[i] = std::max(src1[i], src2[i]);
+                }
+                break;
+
             case Instruction::OpCode::DP3:
             case Instruction::OpCode::DP4:
             {