aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/video_core/vertex_shader.cpp
diff options
context:
space:
mode:
authorGravatar Tony Wasserka <NeoBrainX@gmail.com>2014-12-13 21:22:55 +0100
committerGravatar Tony Wasserka <NeoBrainX@gmail.com>2014-12-20 18:06:55 +0100
commitcd163fb59ae2922d33aa931f51ef5d116c0adc3f (patch)
tree4a3b18a64e55d95cdc2218734bd024fa06ad3737 /src/video_core/vertex_shader.cpp
parentaff808b2fdfd9605179a13eb55b72d68a7cdd8c2 (diff)
Pica/VertexShader: Implement MAX instructions.
Diffstat (limited to 'src/video_core/vertex_shader.cpp')
-rw-r--r--src/video_core/vertex_shader.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/video_core/vertex_shader.cpp b/src/video_core/vertex_shader.cpp
index fbec1bcc..742e5a9f 100644
--- a/src/video_core/vertex_shader.cpp
+++ b/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:
{