Unknown W. Brackets
762b656ea2
GPU: Use a texture directly for MakePixelTexture.
...
This makes it easier to do things with it.
2020-05-13 18:10:09 -07:00
Unknown W. Brackets
2653e50200
softgpu: Avoid RB swizzle when using a postshader.
...
So that it can post-process correctly.
2020-05-13 18:10:09 -07:00
Unknown W. Brackets
3aa8287b74
softgpu: Enable postshader support.
2020-05-13 18:10:09 -07:00
Unknown W. Brackets
cb94487a16
GPU: Move post shader handling to new class.
...
Currently, Vulkan is not working properly and direct (RAM -> output) is
not hooked up. But in general, it works.
2020-05-13 18:10:06 -07:00
Unknown W. Brackets
57bd88fc33
softgpu: Allow display rotation.
2020-05-13 18:07:25 -07:00
Unknown W. Brackets
a03e368566
GPU: Move cardboard/etc. to PresentationCommon.
...
Now this works on softgpu as well.
Some hacks for backend differences...
2020-05-13 18:07:25 -07:00
Unknown W. Brackets
d39b0bdca2
GPU: Split FramebufferCommon into two classes.
...
Only some things moved over so far.
FramebufferCommon does too much, we want to share it with softgpu without
all the buffer management stuff.
2020-05-13 18:07:22 -07:00
Unknown W. Brackets
1b9440611a
softgpu: Fix texture overlap.
...
Mainly happened when we had wide textures and split them up between GPUs.
2020-05-13 17:53:00 -07:00
Unknown W. Brackets
ac60e2ecd4
GPU: Track HW tess at start of frame too.
...
This also makes it so we don't force the setting off when you change
backends, and just ignore it if unsupported.
2020-04-04 11:52:32 -07:00
Unknown W. Brackets
4a0109d273
GPU: Treat negative light exp same as 0.
...
Based on #12507 and some tests, seems like negative exponents are also
fixed to a 1.0f result.
2020-03-22 22:28:05 -07:00
Unknown W. Brackets
f1dfb25427
softgpu: Correct clear/solid rect BR corner.
...
The scissor is inclusive, not exclusive.
2020-03-09 18:57:55 -07:00
Unknown W. Brackets
cebcfb1bbd
GPU: Use old frame when presenting a skip.
...
If we flip using a skipped frame, we may show an even older frame causing
weird flickering.
2020-03-01 13:55:28 -08:00
Unknown W. Brackets
072041a63d
SoftGPU: Convert from 16-bit if unsupported.
...
Should help #12455 , but not actually tested on an affected device.
2019-12-24 11:08:44 -08:00
Henrik Rydgård
54823a87cc
Oops
2019-10-28 13:13:52 +01:00
Henrik Rydgård
970adfbcc9
Isolate most of the softgpu specialization code to RasterizerRectangle.
...
See comments.
2019-10-28 09:33:30 +01:00
Henrik Rydgård
1966c8fe75
Fix a backwards check
2019-10-27 20:55:32 +01:00
Henrik Rydgård
6c8186d046
Remove unused textureswizzle support (we use shaders instead). Universally support presenting 5551 format directly.
2019-10-27 20:55:32 +01:00
Henrik Rydgård
86c781e434
Hack around most of the problems with the save/load dialog. Software stretch gets enabled in non-wide mode, so wallpapers work at a cost of speed.
2019-10-27 20:55:32 +01:00
Henrik Rydgård
102a70b4a5
Scissor fix
2019-10-27 20:55:32 +01:00
Henrik Rydgård
a84f4a0caa
Even more speed.
2019-10-27 20:55:32 +01:00
Henrik Rydgård
eb53609cb0
More speed
2019-10-27 20:55:32 +01:00
Henrik Rydgård
bbbd7f8acc
Buildfix
2019-10-27 20:55:32 +01:00
Henrik Rydgård
714f83f614
Further specialization.
2019-10-27 20:54:36 +01:00
Henrik Rydgård
290e9971a7
More specialization work.
2019-10-27 20:54:36 +01:00
Henrik Rydgård
4f7c23fe79
DarkStalkers: Fix display on OpenGL ES.
2019-10-27 20:54:36 +01:00
Henrik Rydgård
796539ad7f
DarkStalkers: Fix display in the D3D backends. Still broken in OpenGL.
2019-10-27 20:54:36 +01:00
Henrik Rydgård
9099441973
Darkstalkers: Gross hack to avoid the game's own stretch, and present the raw buffer instead for a sharper image.
2019-10-27 20:54:36 +01:00
Henrik Rydgård
2dd7a9aa12
More darkstalkers work
2019-10-27 20:54:36 +01:00
Henrik Rydgård
c7f6724f7e
Detect sprite drawing (1:1 texture mapping), run a simpler function without the triangle state tracking.
...
This will allow further simplification and specialization.
2019-10-27 20:54:36 +01:00
Henrik Rydgård
510229b68b
SoftGPU: Detect through-mode rectangles from triangle strips
2019-10-27 20:54:36 +01:00
Henrik Rydgård
58568632e8
Software renderer: Use hardware color conversion on Vulkan in 5551 16-bit mode
2019-10-27 20:54:36 +01:00
Henrik Rydgård
3a0804a7dd
Start slowly migrating from macros
2019-10-27 20:54:36 +01:00
Henrik Rydgård
ae286aef86
Vulkan+SoftwareRenderer: Fix screen rotation on Android.
...
(Missed this because software rendering is normally disabled on Android)
2019-10-22 22:08:21 +02:00
Unknown W. Brackets
5871ab0538
UI: Stop caching the draw context in coreParam.
...
This is possibly getting outdated in some paths of graphics reinit, and
then causing crashes. Let's just always get it from the graphicsContext.
2019-09-28 21:58:15 -07:00
Unknown W. Brackets
7412e13767
SoftGPU: Implement dithering.
...
Note: it applies even in 8888, so it can be used as a slight brightness
adjustment.
2019-05-26 09:52:34 -07:00
Unknown W. Brackets
0b48c6d066
SoftGPU: Apply color doubling only to RGB.
...
Broken in #11379 - accidentally applied to the alpha value. See #11901
for an example where this caused issues with blending.
2019-03-16 19:40:33 -07:00
Henrik Rydgård
b2e1e3c84d
Merge pull request #11675 from unknownbrackets/softgpu
...
SoftGPU: Respect stencil write mask on test fail
2018-12-17 00:08:43 +01:00
Unknown W. Brackets
aa3b026bfe
SoftGPU: Fix crash on garbage index data.
2018-12-16 13:16:05 -08:00
Unknown W. Brackets
0f880696be
SoftGPU: Respect stencil write mask on test fail.
2018-12-16 13:13:54 -08:00
Unknown W. Brackets
8a7ec4fc19
GPU: Fix curve breakage due to cull flipping.
2018-12-16 13:00:36 -08:00
Unknown W. Brackets
3c5455f85b
SoftGPU: Calculate texcoords in transform.
...
No need to do it in rasterization, and should be faster to do it on the
verts, anyway. This fixes the software issue of #11595 , presumably
because of the w handling.
2018-11-25 19:19:11 -08:00
Unknown W. Brackets
e664e1c1dd
SoftGPU: Oops, properly apply pixel mask in 16-bit.
2018-11-23 07:57:39 -08:00
Unknown W. Brackets
529efded1c
GE Debugger: Fix display of raw normals.
2018-11-22 17:53:36 -08:00
Unknown W. Brackets
11a8857a7e
SoftGPU: Correct clipping for flat shading.
...
It needs to use the provoking color, regardless of culling or clipping.
Fixes Blade Dancer lighting (see #4140.)
2018-11-22 17:48:55 -08:00
Unknown W. Brackets
1c19bce514
GPU: Correct specular exponent zero.
2018-11-22 08:53:25 -08:00
Unknown W. Brackets
4816bfc1a6
GPU: Skip specular on negative diffuse factor.
...
This is correct per hardware tests, see #8403 . Note that the PS3 emulator
running PSP HD remasters does not correctly handle this, and applies
specular for negative diffuse factor.
2018-11-22 08:53:25 -08:00
Unknown W. Brackets
6e46d6c0f9
GPU: Correct powered diffuse with exp=0.
...
Just to ensure negative factors are handled too, as they are on hardware.
2018-11-22 08:53:25 -08:00
Unknown W. Brackets
1cec9f5ea1
GPU: Handle spot light with 0 exp or length.
2018-11-22 08:53:25 -08:00
Unknown W. Brackets
10fa20cb06
SoftGPU: Fix pixel mask on rectangle clear.
...
Oops, had inverted it. This caused it to improperly clear when masked.
2018-11-19 06:15:55 -08:00
Unknown W. Brackets
b2d60cb807
SoftGPU: Cleanup lighting code a bit.
...
Avoid using Length() when Length2() is enough, simplify some things.
2018-11-18 07:28:03 -08:00