Commit Graph

25 Commits

Author SHA1 Message Date
d151d797b1 Vertex Shader: Zero OutputVertex to avoid denormals
Unused OutputVertex attributes were being left un-initialized. The
leftover garbage sometimes decoded as floating-point denormalized
values, causing fallbacks to microcode and massive slowdowns in the rest
of the rasterization pipeline even though the results were unused. By
zeroing the structure we ensure these attributes only contain harmless
zeros.
2014-12-29 02:08:09 -02:00
01c675685e Merge pull request #327 from Apology11/master
Fix visual studio ambiguous symbol error
2014-12-26 21:43:59 -05:00
0de6a08d75 Merge pull request #291 from purpasmart96/license
License change
2014-12-21 16:05:44 -05:00
8d81e23d6e Fix visual studio ambiguous symbol error 2014-12-21 18:34:20 +01:00
ebfd831ccb License change 2014-12-20 21:20:24 -08:00
08f42c2b8c Pica/VertexShader: Promote a log message to critical status. 2014-12-20 18:06:56 +01:00
17f31de364 Pica/VertexShader: Small optimization. 2014-12-20 18:06:56 +01:00
a664574ecb Pica/VertexShader: Be robust against invalid inputs.
More specifically, this also fixes crashes by Citra trying to load a src2 register even if the current instruction does not use that.
2014-12-20 18:06:56 +01:00
ad5db467d7 Pica/VertexShader: Clarify a comment. 2014-12-20 18:06:56 +01:00
6bd41de276 Pica/VertexShader: Cleanup flow control logic and implement CMP/IFU instructions. 2014-12-20 18:06:55 +01:00
22afb9d830 Pica/VertexShader: Run instruction handlers according to the effective opcode.
This allows for proper emulation of the different CMP/LRP/MAD instructions.
2014-12-20 18:06:55 +01:00
cd163fb59a Pica/VertexShader: Implement MAX instructions. 2014-12-20 18:06:55 +01:00
aff808b2fd Pica: Add support for boolean uniforms. 2014-12-20 18:06:55 +01:00
67618a2c55 Pica/VertexShader: Add support for MOVA, CMP and IFC. 2014-12-20 18:06:55 +01:00
cb1804e0ab Pica/VertexShader: Move code around a bit. 2014-12-20 18:06:55 +01:00
b85524c760 Pica/VertexShader: Some cleanups using std::array. 2014-12-20 18:06:55 +01:00
ce36ad454e Pica/VertexShader: Support negating src2. 2014-12-20 18:06:55 +01:00
8ce1d32460 Pica/VertexShader: Remove (now) duplicated shader bytecode definitions in favor of nihstro's ones. 2014-12-20 18:06:55 +01:00
0600e2d8b5 Convert old logging calls to new logging macros 2014-12-13 02:08:02 -02:00
4d4572c697 Integrate Boost into build system and perform a trivial cleanup in vertex_shader.cpp. 2014-12-07 23:52:17 +01:00
eb5054e6eb Fix warnings in video_core 2014-10-07 20:35:13 -04:00
697b50c3ff Pica/VertexShader: Fix a bug in the call stack handling. 2014-08-25 22:03:19 +02:00
62c36a4ef0 Pica/VertexShader: Fix a bug in the bitfield definitions and add the "negate" field for swizzlers. 2014-08-25 22:03:18 +02:00
f37e39deb9 Pica: Add debug utilities for dumping shaders. 2014-08-25 22:03:18 +02:00
c526512619 Pica: Add vertex shader implementation. 2014-08-12 13:48:10 +02:00