3184 Commits

Author SHA1 Message Date
Unknown W. Brackets
2344760018 Use framebuffer fetch for more accurate blending.
On devices which support it, framebuffer fetch should give us more correct
blending than copying fbos or using a fallback (such as doubling which may
clamp.)

Not actually tested on any supported device.
2015-03-07 12:09:27 -08:00
Unknown W. Brackets
9c3ccc97a2 Support EXT_shader_framebuffer_fetch.
We only supported NV_ before.  Not tested on any supporting device, but
this is primarily found on PowerVR devices.  This may allow them to
perform effects (like min/max/etc.) more accurately and quicker.
2015-03-07 12:07:53 -08:00
Unknown W. Brackets
98d7afae89 Switch to #pragma once in a few places.
Doesn't really affect git history much to change these.
2015-03-02 22:34:51 -08:00
Unknown W. Brackets
818627801d Fix newlines in old merge, oops.
This is now showing up in git because I touched it, and it's got the wrong
newlines.  Just making it go away.
2015-03-01 18:35:28 -08:00
Henrik Rydgård
c0450f7f9e Merge pull request #6920 from hrydgard/dx9-depal
Dx9 depal - needs debugging before merge
2015-03-01 21:04:36 +01:00
Unknown W. Brackets
d4e74e6998 d3d9: Clarify a comment. 2015-03-01 11:47:39 -08:00
Unknown W. Brackets
105087d367 dx9: Swap depal bgra in shader.
We don't swap palettes anymore, except in the shader.
2015-03-01 11:28:06 -08:00
Unknown W. Brackets
3bc954778c dx9: Explicitly restore viewport after depal.
Otherwise, it doesn't get restored.
2015-03-01 11:28:06 -08:00
Unknown W. Brackets
bda6f0a4b8 dx9: Reset more state before depal draw.
Was alpha blending before.
2015-03-01 11:28:05 -08:00
Henrik Rydgard
869f74d1b0 Depal: Apply the half-pixel offset that looked the least wrong. Still not right. 2015-03-01 11:28:04 -08:00
Unknown W. Brackets
7b76f7ae60 d3d: Fix depal flipping and negative z. 2015-03-01 11:28:04 -08:00
Unknown W. Brackets
1dfecbf2b8 d3d: Actually upload the clut texture. 2015-03-01 11:27:28 -08:00
Henrik Rydgard
78190f3e8c DX9: Hook up the depalettize code. Doesn't work yet though. 2015-03-01 11:24:45 -08:00
Henrik Rydgard
13bf0acd28 DX9: Add DepalettizeShader manager (not hooked up, so untested) 2015-03-01 11:16:56 -08:00
Henrik Rydgard
0c9f541a43 Move depalettize-shader generator to Common 2015-03-01 11:15:27 -08:00
Unknown W. Brackets
383f894db7 d3d9: Make blending more like GL's recent changes. 2015-03-01 10:31:43 -08:00
Chin
37f50a3792 Change to pass some arguments by reference 2015-03-01 16:49:00 +01:00
Henrik Rydgard
69e099e615 Fix #6398 for DX9 as well 2015-03-01 16:15:13 +01:00
Henrik Rydgard
aeb03d1bc9 Workaround for crash in Pangya Fantasy Golf reported in #6398
(Simple sanity check when decoding software skinned vertices)
2015-03-01 15:33:34 +01:00
Henrik Rydgård
723d7c224d Merge pull request #7449 from unknownbrackets/xbrz-update
Update to xBRZ 1.2, with its perf improvements
2015-03-01 12:17:15 +01:00
Unknown W. Brackets
b25c2de369 Allow block transfers from 0 that are too tall.
Hopefully this is safe.
2015-02-28 01:28:53 -08:00
Unknown W. Brackets
7379d37e73 Bail on bad verts after grabbing byte increment. 2015-02-28 01:28:30 -08:00
Unknown W. Brackets
6294ecf64b Prevent GE debugger crash on bad vertex addr. 2015-02-27 20:45:21 -08:00
Henrik Rydgård
d990221849 Merge pull request #7509 from unknownbrackets/gpu-minor
Correct full alpha for render-to-texture
2015-02-26 21:56:57 +01:00
Henrik Rydgård
3bf86dc340 Merge pull request #7513 from unknownbrackets/spline-minor
Improve spline performance
2015-02-26 21:56:31 +01:00
Henrik Rydgård
0d69576810 Merge pull request #7515 from unknownbrackets/gpu-minor2
For 5551 buffers, force stencil mask to 1/0
2015-02-26 21:56:19 +01:00
Unknown W. Brackets
945ff359b2 Detect SSE4.1 support better when compiling. 2015-02-25 19:53:31 -08:00
Unknown W. Brackets
647e841959 Use SSE in spline value generation too. 2015-02-25 19:51:10 -08:00
Unknown W. Brackets
588efa5a71 Use SSE4.1, if available, for spline normals. 2015-02-25 19:28:52 -08:00
Unknown W. Brackets
f070d6f5ed Use SSE when generating spline normals. 2015-02-25 19:22:48 -08:00
Henrik Rydgård
1170331b53 Merge pull request #7520 from unknownbrackets/gpu-blend
Avoid using constant color when blending
2015-02-23 20:18:09 +01:00
Unknown W. Brackets
a3342a72d7 Fix copy/paste mistake from 808eeb3a25.
I'm pretty sure this was not intentional.
2015-02-23 11:06:44 -08:00
Unknown W. Brackets
b5126f7236 Use ONE/ZERO in place of CONSTANT_ALPHA if okay. 2015-02-23 09:58:46 -08:00
Unknown W. Brackets
3ff51588f7 Avoid using constant color when blending.
If it's just ONE/ZERO or etc., we can keep those constants.  May be
faster, and apparently less buggy in some drivers.
2015-02-23 08:37:00 -08:00
Henrik Rydgård
f2cde73587 Merge pull request #7519 from thedax/d3d9-hack
Add the Phantasy Star Portable 2 depth range hack to Direct3D9 as well.
2015-02-23 11:17:36 +01:00
The Dax
7104629b24 Add the Phantasy Star Portable 2 depth range hack to Direct3D9 as well.
It seems to work fine for me..
2015-02-23 04:42:04 -05:00
Unknown W. Brackets
29e6197e6f Floor float z coords in throughmode.
Fixes #6766 in 32-bit mode only.
2015-02-22 21:04:48 -08:00
Unknown W. Brackets
9d5ae2b336 For 5551 buffers, force stencil mask to 1/0.
4444 it would also be ideal to spread the bits, but that gets a bit
complicated.  5650 probably doesn't matter.
2015-02-22 19:11:11 -08:00
Unknown W. Brackets
8e19f568d7 Optimize spline weighting using SSE and templates.
Makes the Thundaga spell much more survivable on a i7, at least.
2015-02-22 13:24:48 -08:00
Unknown W. Brackets
90605520a1 Add conversions between Vec3f and Vec3Packedf. 2015-02-22 13:16:07 -08:00
Unknown W. Brackets
69756733eb Add another GE cmd for skip tex in debugger. 2015-02-21 18:09:53 -08:00
Unknown W. Brackets
abace1aa76 For render-to-tex, full alpha on 565 use only.
It's not how it was drawn, but how it is used... in case it changes
formats, which apparently Split/Second does.  Fixes #7492.
2015-02-21 18:08:50 -08:00
Unknown W. Brackets
0982336565 Oops, fix race in xBRZ buffer alloc. 2015-02-21 15:51:02 -08:00
Unknown W. Brackets
10049e62a8 Allocate the xBRZ buffer only when actually used.
This way if scaling is off, we don't have to worry about potentially
eating more RAM on any platform.
2015-02-21 15:51:02 -08:00
Unknown W. Brackets
4c15afa905 Allow multiple replacements on the same func.
Or, more specifically, hooks.  This allows enter and exit on the same
func, which can obviously be useful for debugging.
2015-02-21 15:48:09 -08:00
The Dax
3239e27e84 Update GE_TEXMAP_ENVIRONMENT_MAP in Direct3D9 so it matches OpenGL's behaviour.
Improves the car colours in Outrun 2006, but like OpenGL, it's still got some areas with the wrong blue hue.
2015-02-17 02:17:24 -05:00
Henrik Rydgard
2290a6165e Try to fix glitch reported in #7457 in PHOTOKANO 2015-02-12 11:44:06 +01:00
Henrik Rydgard
96ecb9a160 IndexGenerator: Add back a line that got lost in af46d17b 2015-02-11 21:55:05 +01:00
Henrik Rydgard
e5706ac9ff Remove accidentally added Flush() call (was debugging something else) 2015-02-04 17:41:51 +01:00
Henrik Rydgard
018b134545 Fix issue where on-screen UI might be invisible in non-buffered rendering 2015-02-04 17:29:49 +01:00