Connor McLaughlin
bf3c83658a
GPU: More accurate texture blending in non-true-colour-mode
...
Fixes Silent Hill loading animation, Advanced V.G. intro fade-out, and
probably others.
2020-05-15 01:32:22 +10:00
Connor McLaughlin
81f297456c
GPU: Fix mismatched scanout between hardware/software renderers
2020-05-12 01:35:06 +10:00
Connor McLaughlin
257c86930f
GPU/OpenGL: Fix GLES again
2020-05-03 19:38:27 +10:00
Connor McLaughlin
8139230d05
GPU/OpenGL: Shader compile fix
2020-05-03 18:33:33 +10:00
Connor McLaughlin
e058beb4b0
GPU/HW: Fix oversized VRAM copies writing out of bounds
...
Fixes jittering in Duke Nukem - Land of the Babes water effect.
2020-05-03 18:09:34 +10:00
Connor McLaughlin
9446587e8f
GPU/HW: Mask bit handling in hardware renderers
...
Fixes:
- Menu effect in Ghost in the Shell
- Incorrect text colours in menu of Dragon Quest VII
- Fade effect in TwinBee RPG
- Fog in Silent Hill
- Water in Duke Nukem - Land of the Babes
- Shadows in Ultraman - Fighting Evolution
and probably others.
2020-05-03 17:11:31 +10:00
Connor McLaughlin
456ddc037a
GPU/OpenGL: Remove testing code which broke ES
2020-05-03 02:52:36 +10:00
Connor McLaughlin
620210cfc9
GPU/OpenGL: Use explicit bindings where possible
2020-05-02 16:01:16 +10:00
Connor McLaughlin
557a6c3696
GPU/HW: Work around rasterization differences in OpenGL
...
Strangely, AMD GPUs are fine, it's just NVIDIA and Intel. Time for a
Vulkan renderer?
2020-04-29 21:17:49 +10:00
Connor McLaughlin
746a00743e
GPU/HW: Don't emit dual-source colour writes on opaque pass
...
Fixes warnings triggering in D3D11 debug runtime.
2020-04-27 00:52:02 +10:00
Connor McLaughlin
98ff136f67
GPU: Round texture coordinates instead of flooring
...
Fixes misaligned textures in some games such as Crash Bandicoot.
Currently, because the vertex offset is not applied at >1x resolution
scale, this will not work so it is disabled at >1x.
2020-04-26 19:15:50 +10:00
Connor McLaughlin
1891b45b0e
GPU/OpenGL: Fix shader compile error on NVIDIA
2020-04-24 03:30:32 +10:00
Connor McLaughlin
715209e178
GPU/HW: Truncate colours to 16-bit before applying alpha
...
Fixes battle screen transitions blowing out in brightness in Final
Fantasy 7.
2020-04-24 03:26:54 +10:00
Connor McLaughlin
e2f5905cd6
GPU/HW: Use unsigned integers in shaders for texcoords
...
Probably needs testing on GLES.
2020-04-23 15:14:19 +10:00
Connor McLaughlin
30033ed4aa
GPU/HW: Minor improvements to texture filtering
2020-04-23 15:08:28 +10:00
Connor McLaughlin
13e2b28f50
GPU/HW: Only apply vertex offset at 1x resolution scale
2020-04-23 14:45:11 +10:00
Connor McLaughlin
d7aa514f14
GPU/HW/OpenGL: Work around vertex-Y-off-by-one issue
2020-04-22 17:39:46 +10:00
Connor McLaughlin
ec5b52b3fb
GPU/HW: Tweak vertex shader offsets
...
Fixes Doom/Dark Forces/etc in hardware renderer, but only at 1x
resolution. Fixes missing lines in Castlevania SOTM, Ridge Racer Type 4,
etc.
2020-04-21 22:07:55 +10:00
Connor McLaughlin
5ad133a278
GPU/HW: Implement oversized copies on GPU
...
Fixes slowdown caused by this.
2020-04-19 22:30:55 +10:00
Connor McLaughlin
197b193ca3
GPU/HW/OpenGL: Use geometry shaders for upscaled line rendering
2020-04-16 21:29:11 +10:00
Connor McLaughlin
d9ebb975b2
CommonHostInterface: Reimplement controller rumble support
...
Even better than before, supports separate motor control.
2020-04-14 16:34:42 +10:00
Connor McLaughlin
7779a54bc5
GPU: Rename 'Force Progressive Scan' to 'Disable Interlacing'
...
It affects rendering as well as display/scanout now, after all.
2020-04-11 16:37:53 +10:00
Connor McLaughlin
9e024b7a51
GPU: Handle VRAM wrap-around behavior on scanout
2020-04-11 16:09:03 +10:00
Connor McLaughlin
6775100170
GPU: Drop OpenGL ES renderer
...
We can put this through the normal GL renderer instead.
2020-04-11 00:00:10 +10:00
Connor McLaughlin
c483a78889
GPU: Implement interlaced VRAM fills
2020-04-04 00:24:37 +10:00
Connor McLaughlin
2aecb570c1
GPU: Implement interlaced rendering in hardware backends
2020-04-04 00:24:37 +10:00
Connor McLaughlin
2a6e04988f
GPU/HW: Simplify 24-bit scanout and interlacing shader
...
Has the added bonus of being faster (no downscale copy) and fixes the
edge case where the image is cropped in VRAM.
2020-04-02 00:17:25 +10:00
Connor McLaughlin
e2e2b573c0
GPU/HW: Move drawing offset to CPU-side
...
Saves updating the uniform buffer.
2020-03-24 00:20:15 +10:00
Connor McLaughlin
40481305c4
GPU/HW: Fudge texture coordinates by half a screen-space pixel
...
Fixes holes in triangles in some games, e.g. Disney's The Emperor's New
Groove.
2020-03-24 00:20:12 +10:00
Connor McLaughlin
e19175edae
GPU/D3D11: Fix non-vertical line rendering at >1x scale
2020-03-08 00:03:31 +10:00
Connor McLaughlin
635ab72b37
GPU: Implement "Scaled Dithering" option
...
Fixes #29 .
2020-03-01 00:05:31 +10:00
Connor McLaughlin
f5482cb3b6
Don't require OpenGL compatibility profile
2020-02-15 21:11:51 +09:00
Connor McLaughlin
71c1e243fe
Remove YBaseLib dependency
2020-01-10 13:40:53 +10:00
Connor McLaughlin
152b56c8cc
GPU: Fix mask bit setting on non-textured polygons
...
Fixes garbled colours in FMVs in some games.
2019-12-10 23:27:41 +10:00
Connor McLaughlin
67c67bbb66
GPU: Add basic texture filtering support
...
Still has issues around the edges of text.
2019-12-07 17:03:56 +10:00
Connor McLaughlin
c284d3835f
GPU: Add a simplified OpenGL ES renderer
...
Seems this is the only way to get semi-decent performance out of Mali
drivers :/
2019-12-07 01:37:37 +10:00
Connor McLaughlin
adc3a2fac1
Android: Support GLES3 and hardware renderers
2019-12-01 21:57:27 +10:00
Connor McLaughlin
0bc7333e6e
GPU/OpenGL: Set GLSL version string dynamically
...
Rather than hardcoding to 3.3.
2019-11-25 00:17:17 +10:00
Connor McLaughlin
024ed01bbb
GPU/HW: Set alpha to mask bit setting
2019-11-24 23:30:35 +10:00
Connor McLaughlin
bc5a247a4b
GPU/HW: Use dual-source blend to split alpha and mask
2019-11-24 23:28:01 +10:00
Connor McLaughlin
bc9ed3572b
GPU/HW: Fix flipped GPU readback in D3D11
2019-11-14 22:11:12 +10:00
Connor McLaughlin
3998b9684e
GPU/HW: GPU-based RGBA8->RGB5551 conversion for readbacks
2019-11-14 17:16:21 +10:00
Connor McLaughlin
53881219ce
GPU: Fix handling of interlaced non-480-line mode
2019-11-14 00:59:09 +10:00
Connor McLaughlin
f7f4818de4
GPU/HW: Explicitly specify std140 layout for UBOs
2019-11-13 22:48:14 +10:00
Connor McLaughlin
ff8cef4da3
GPU/HW: Support OpenGL ES
2019-11-06 01:33:09 +10:00
Connor McLaughlin
16d83989e5
GPU/HW: Support line drawing at >1x scale in D3D11 via GS
2019-11-05 00:27:22 +10:00
Connor McLaughlin
9de9cf3be2
GPU/HW: Add D3D11 renderer and refactor host interface/display
2019-11-04 00:39:48 +10:00
Connor McLaughlin
47849465d8
GPU/HW: Use uniform blocks for all shaders + HLSL support in shadergen
2019-11-03 15:18:51 +10:00
Connor McLaughlin
be81d08109
GPU/HW: Split shadergen to seperate class
2019-11-03 13:36:59 +10:00