b3a67821e4
VideoCommon: fix rounding in TEV.
...
The hardware backends pass the TEV tests in gxtest with this change.
2014-04-15 16:47:01 -07:00
068f26d2aa
PixelShaderGen: Fix an issue with color combiner compare mode and simplify the affected line a bit.
...
This was a mistake of mine when translating floating point values to integer values.
Also, the max() part of that line was just completely redundant because the sign of an absolute value is always greater than or equal to zero.
Fixes issue 7178.
2014-04-15 23:41:07 +02:00
4f3227b4a9
Merge pull request #261 from magumagu/pixelshadergen-extra-paren
...
PixelShaderGen: delete extra parenthesis
2014-04-14 09:48:02 +02:00
a2150ef1f8
PixelShaderGen: delete extra parenthesis.
...
Without this patch, we can generate a pixel shader which doesn't compile
in some cases.
2014-04-14 00:41:27 -07:00
a9fa49f34d
Support checking for the Mali-T7xx line of GPUs.
...
They are similar enough that they will share bugs with their drivers, so make them fall under the same Mali-Txxx umbrella of bug issues.
If there is ever a need in the future for having separate bugs depending on family, we can support that then.
2014-04-11 23:46:44 -05:00
fd9c1fa746
VideoBackend: remove unused config vars.
...
No point to keeping around variables which are always "true".
2014-04-11 14:53:12 -07:00
306b9afd1e
Merge pull request #224 from magumagu/swrender-deletepixelfork
...
Software backend: Delete forked PixelEngine.
2014-04-11 20:01:23 +02:00
cdf6172348
Merge pull request #213 from Jezze/vertexloader-cleanups
...
Vertexloader cleanups
2014-04-10 08:52:36 +02:00
87d106d65c
Remove dumb CodeBlock duplication in the emitters.
...
Fixes issue 6990.
This uses a bit of templating to remove the duplicate code that is the CodeBlocks in each emitter headers.
No actual functionality change in this.
2014-04-09 13:53:43 -05:00
3251d78f89
Add initial support for GLSL ES 3.10.
...
GLSL ES 3.10 adds implicit support for the binding layout qualifier that we use.
Changes our GLSL version enums to bit values so we can check for both ES versions easily.
2014-04-03 00:46:09 -05:00
9b03178673
Merge pull request #222 from comex/more-clang-fixes
...
More clang fixes
2014-03-30 13:24:08 +02:00
b5654a2464
Don't cast -1 to enum to represent a missing value.
...
This is undefined behavior in C++, and a clang warning suggests it is
actually producing bad code as a result:
../Source/Core/VideoCommon/BPFunctions.cpp:164:45: warning: comparison of constant 4294967295 with expression of type 'PEControl::PixelFormat' is always false [-Wtautological-constant-out-of-range-compare]
if (new_format == old_format || old_format == (unsigned int)-1)
2014-03-30 01:40:06 -04:00
0661efea84
Software backend: Delete forked PixelEngine.
...
Mostly just zapping a bunch of duplicated code; the only interesting thing
going on here is the changes to the performance counter implementation.
2014-03-29 12:07:20 -07:00
664c8d30a0
Remove all trailing whitespaces from our codebase.
2014-03-29 11:05:44 +01:00
73176d0333
VideoCommon/VertexLoader: Add more use of std::min and std::max
2014-03-27 00:33:41 +01:00
478a27e052
VideoCommon/VertexLoader: Remove duplicate point min and max calculation
2014-03-27 00:24:48 +01:00
0c62ae9c1a
VideoCommon/VertexLoader: Remove NRM enum
2014-03-26 23:56:57 +01:00
ea6b37cb75
Merge pull request #193 from neobrain/tev_combiner_fixes
...
PixelShaderGen: Cleanups and fixes for tev combiners.
2014-03-26 10:05:46 +01:00
c6070b94ce
BPMemory: Fix an enum to use u32 as its underlying type.
2014-03-26 10:02:57 +01:00
eb0f547a17
PixelShaderGen: Cleanups.
2014-03-26 00:23:36 +01:00
4f82d6f7af
PixelShaderGen: Implement tev combiner lerping in a faster way which also reproduces hardware behavior perfectly.
...
The new behavior has been verified to be correct by hardware tests. This is an improvement over the old code, which was just a guess.
2014-03-26 00:17:04 +01:00
fdad95c055
PixelShaderGen: Cleanups and fixes for tev combiners.
...
Fixes issue 4674.
2014-03-26 00:17:03 +01:00
16105db709
BPMemory: Make use of BitField in a number of structures.
2014-03-25 23:57:58 +01:00
8941f19cdb
BPMemory: Expose the pixel_format and zformat fields in PE_CONTROL as enumerations.
2014-03-25 23:57:58 +01:00
77a7bab5ae
BPMemory: Use the new BitField class in two selected structures.
2014-03-25 23:57:57 +01:00
4a68550d01
Remove superfluous bit shift
2014-03-18 04:07:45 +01:00
484fb46390
Clang 3.4 exposes some warnings on Android.
...
Fixes all warnings on Android build except for what is in externals.
Removes a function from TextureDecoder_Generic since it is unused and generates a warning.
2014-03-17 18:17:12 -05:00
6445e02d53
Merge pull request #159 from Tilka/misc
...
Cleanup stuff
2014-03-17 17:43:20 +13:00
2fcaca0603
More range-based loops and overrides
2014-03-17 02:55:55 +01:00
a9adaa5601
Prevent VideoConfig inheritance.
2014-03-16 17:00:29 -04:00
82f772fdcc
Remove the extra parameters field from the PH.
...
Metroid: Other M was the only game which required this field, but the
issue in that game can be fixed properly by enabling format change
emulation. Hence, there's no point in having this around anymore.
Fixes issue 6644.
2014-03-15 15:04:39 +02:00
8d679e76d2
Merge pull request #164 from lioncash/cstr-cull
...
Kill off some usages of c_str.
2014-03-15 00:57:56 +01:00
0f81cbd6be
PixelShaderGen: More code alignment fixes.
2014-03-14 22:33:26 +01:00
c1016205d3
Pixel/LightingShaderGen: Fix code alignment issues.
...
Most of these weren't even introduced by me, but hey - I'm nice and love wasting my time :p
2014-03-14 22:33:26 +01:00
2067f88e0f
PixelShaderGen: Don't make local lookup tables "static".
2014-03-14 22:33:26 +01:00
0ce92e0162
PixelShaderGen: Remove the "i" prefix for integer variables.
...
The prefix was just required in the development stage to reduce the risk of regressions.
2014-03-14 22:33:26 +01:00
bdd629c598
PixelShaderGen: Use spaces for alignment where appropriate.
2014-03-14 22:33:26 +01:00
6e65e02c9e
ConstantManager: Do not use single-element arrays.
2014-03-14 22:33:25 +01:00
6c2971eaf6
PixelShaderGen: Write 16777215 in hex (0xFFFFFF) so that it's easier to understand.
2014-03-14 22:33:25 +01:00
8ebb65ebf2
PixelShaderGen: Prettify generated shader source.
2014-03-14 22:33:24 +01:00
e2e1c5c905
PixelShaderGen: Add a note about a random idea which should be checked with hardware tests.
2014-03-14 22:33:12 +01:00
6fcbda6752
PixelShaderGen: Cleanup and clarify bump alpha combiner inputs.
2014-03-14 22:33:12 +01:00
9a96a1d525
PixelShaderGen: Remove old, mostly useless comments.
...
A few vague lines of comments cannot replace an afternoon reading of how TEV works.
2014-03-14 22:33:12 +01:00
8b8bb04fd3
PixelShaderGen: Use bit shifts instead of multiplications as a small optimization.
2014-03-14 22:33:12 +01:00
036a8c6951
PixelShaderGen: Clean up tev compare functionality.
2014-03-14 22:33:10 +01:00
fa7173d099
PixelShaderGen: Store tex scale as an integer.
2014-03-14 22:32:30 +01:00
16109fb453
PixelShaderGen: Treat UV coordinates as actual integers.
2014-03-14 22:32:29 +01:00
50526ae50a
PixelShaderGen: Remove some dead code.
2014-03-14 22:32:18 +01:00
065919f599
PixelShaderGen: Perform some of the fog calculations with integers.
2014-03-14 22:31:32 +01:00
605b687af8
PixelShaderGen: Use integer math for z textures.
2014-03-14 22:31:31 +01:00