Commit graph

54 commits

Author SHA1 Message Date
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
ab3c9fc21f Vulkan: Move scissor/viewport rotation into the VulkanRenderManager. Fixes #12303. 2019-09-03 23:26:44 +02:00
Henrik Rydgård
ee294251c9 Fix the 270 degree rotation case 2019-06-21 11:58:41 +02:00
Henrik Rydgård
e943724905 Vulkan: Apply the desired pretransform when drawing to the backbuffer.
This should save a lot of memory bandwidth on mobile devices that can't
rotate images natively in the display engine. Fixes #12099.
2019-06-21 09:38:51 +02:00
Henrik Rydgård
df98721e73 Write rough framework for GPU discard test screen 2018-12-19 13:48:54 +01:00
Unknown W. Brackets
c97023568c thin3d: Fix requesting BGRA buffers.
Should be fine to request BGRA->BGRA.

Also, the reverse flags were wrong/ignored on the format.
2018-06-16 13:31:08 -07:00
Unknown W. Brackets
e90b01d9ac thin3d: Convert BGRA8888 to RGB888 for screenshots.
In case we prefer BGRA for some buffer in Vulkan.  Also reporting.
2018-06-06 05:56:29 -07:00
Henrik Rydgård
7e756544ee Add a missing virtual destructor, fix a warning 2018-05-30 18:01:49 +02:00
Henrik Rydgård
011e57c0e7 Always specify GLSL version 450 when compiling Vulkan shaders.
Bit of a risky change so late in the game but it's wrong, it needs fixing.
See for example the comments to fb7a63bd11
2018-05-13 20:42:17 +02:00
Unknown W. Brackets
170e871c54 thin3d: Report unsupported format conversion.
Better we know than ignore.
2018-04-29 10:23:53 -07:00
Unknown W. Brackets
ae1bb20b7b GLES: Fix game screenshots. 2018-04-29 10:23:03 -07:00
Henrik Rydgård
3b0d307792 Fix something found by -fsanitize=undefined 2018-03-01 08:24:47 +01:00
Henrik Rydgård
8438defb24 Fix some memory leaks 2018-02-04 13:39:10 +01:00
Henrik Rydgård
bc959470e5 Loosen up some asserts that seem to trigger unexpectedly... need investigation. 2017-11-29 19:07:07 +01:00
Henrik Rydgård
de67c9feff Vulkan screenshots: Fix R/G swap bug. Thanks unknown. 2017-11-15 17:07:38 +01:00
Henrik Rydgård
10792cc8e7 Windows/Vulkan: implement screenshots. Something is iffy with the red/blue swap though... 2017-11-15 13:18:29 +01:00
Unknown W. Brackets
3a84b63777 Vulkan: Convert depth format on readback.
Although, the GPU debugger stuff already handles more formats, it's hard
to get the current format to avoid the conversion...
2017-11-06 00:29:02 -08:00
Henrik Rydgård
97dced543e Share the conversion code between vulkan and D3D, fixing the missing format thing. 2017-10-29 14:42:51 +01:00
Henrik Rydgård
017d3da067 Allow D3D9 context creation to bail if shader compilation fails (D3D9 runtime not installed).
Fixes an issue where after switching to D3D9 on a PC without the D3D9 runtime, it's impossible to start PPSSPP anymore.
2017-10-20 11:53:07 +02:00
Henrik Rydgård
62972cb891 D3D11: Move to CopyFramebufferToSync where easily possible. 2017-10-11 13:34:31 +02:00
Unknown W. Brackets
e754cca288 GLES: Add OpenGL 3.x core profile support.
Need to define #version everywhere and avoid varying/etc.
2017-09-20 12:22:01 -07:00
Henrik Rydgard
f24b1495ba Assorted texture format cleanup, prep for supporting D3D11 on Win7 2017-02-22 16:23:04 +01:00
Henrik Rydgard
a846c4f68f More assorted D3D11 fixes. The samplemask in SetBlendState was the problem. 2017-02-08 14:55:03 +01:00
Henrik Rydgard
768c87ebd3 Fix another D3D11 bug, still no dice... 2017-02-08 13:36:20 +01:00
Henrik Rydgard
fe1b593c15 DrawContext: Initial implementation of dynamic UBO support 2017-02-08 12:26:48 +01:00
Henrik Rydgard
08cebe99fc D3D11: Fix a bunch of errors. Still no buffers or drawing. 2017-02-07 12:12:05 +01:00
Henrik Rydgard
abc80ae770 Enough D3D11 to stumble to the first thin3d draw call. Buffers not implemented yet. 2017-02-07 11:44:44 +01:00
Henrik Rydgård
9d5371a8ba Thin3d: More rigorous handling of RGBA4444 texture formats 2017-01-24 20:59:00 +01:00
Henrik Rydgård
528af8a939 Simplification around textures 2017-01-24 20:59:00 +01:00
Henrik Rydgård
6a7d3a3910 Break out image file management from DrawContext (thin3d) 2017-01-24 20:58:59 +01:00
Henrik Rydgård
1c337f72bb Slightly saner way to choose shaders depending on language. More work needed. 2017-01-24 20:58:59 +01:00
Henrik Rydgård
cbf4e5f38c Implement colormask 2016-12-27 11:59:11 +01:00
Henrik Rydgård
8d84fb75c7 Remove ShaderSet presets 2016-12-27 11:59:10 +01:00
Henrik Rydgård
4462a8cc99 Rename ShaderSet to Pipeline. Get rid of scissorEnable setting (scissor is always enabled). 2016-12-27 11:59:10 +01:00
Henrik Rydgård
e56f251f74 Make ShaderSet support more than just fshader/vshader 2016-12-27 11:59:10 +01:00
Henrik Rydgård
3de4a38527 More renaming to match 2016-12-27 11:59:10 +01:00
Henrik Rydgård
cce1ee332b More complete DataFormat enum 2016-12-27 11:59:10 +01:00
Henrik Rydgård
425940b433 More renaming 2016-12-27 11:59:07 +01:00
Henrik Rydgård
f86b9f7900 Guess what? More renaming 2016-12-27 11:59:06 +01:00
Henrik Rydgård
9b439e4c43 Remove Thin3D prefix on more things 2016-12-27 11:59:06 +01:00
Henrik Rydgård
463251908b Rename things to closer match another project which I plan to share some code with 2016-12-27 11:59:02 +01:00
Henrik Rydgård
10393f5d4e Move Thin3D into the Draw namespace. 2016-12-27 11:58:03 +01:00
Henrik Rydgård
b60ad37146 Remove blend and sampler state presets, they didn't save any code 2016-12-25 11:37:23 +01:00
Henrik Rydgård
4a3938958c Thin3D: Unified DataFormat enum 2016-12-25 11:31:33 +01:00
Henrik Rydgard
d43b3ef73f Minor cleanup in thin3d 2016-12-22 13:25:42 +01:00
Henrik Rydgard
51bcb02921 Minor vulkan updates to match the latest SDK/validator 2016-05-14 16:29:40 +02:00
Unknown W. Brackets
bdc0dac6c5 thin3d: Plug leaks in samplers and vk shaders. 2016-03-21 00:03:34 -07:00
Henrik Rydgard
cfbecf5071 More progress 2016-03-20 19:26:41 +01:00
Henrik Rydgard
83a5313a06 More fixes 2016-03-20 19:26:12 +01:00
Henrik Rydgard
c64064024d Initial vulkan code.
This was squashed from nine commits but using old versions of Vulkan.
2016-03-20 19:18:35 +01:00