Commit graph

119 commits

Author SHA1 Message Date
kd-11
28f3e9a65b vk: Move resource init/destroy to constructor and destructor 2017-06-22 23:36:15 +03:00
kd-11
590bb7cbe4 rsx: Bug fixes
rsx: Give more info when ring buffer allocations fail
2017-06-22 23:36:15 +03:00
kd-11
798f90dac2 rsx/ui: Make a few settings configurable via the GUI 2017-06-22 23:36:15 +03:00
kd-11
b2e906f4cc rsx: Code cleanup. Fixes several dozen warnings
- Wrap unused parameters as comments to prevent C1400
- Fix sized variable conversions with explicit casts
2017-06-22 23:36:15 +03:00
kd-11
13825c9ef7 vk: Proper shutdown to avoid destroying resources still in use 2017-06-22 23:36:15 +03:00
kd-11
6013b0782e vk: Avoid constantly reinitializing the SH context when compiling SPIRV. Speedup 2017-06-22 23:36:15 +03:00
kd-11
86adc42739 rsx/gl/vk: Invert default stencil values
- Fixes stencil volume shadows in a few games. This is part of the surface invalidation workarounds
2017-06-22 23:36:15 +03:00
kd-11
98cf72e0fb rsx: Fix clip space computations 2017-06-22 23:36:15 +03:00
kd-11
0cb6dee474 vk/gl: Do not sample currently bound render targets
- Create temporary copies for use with the draw call instead
2017-06-22 23:36:15 +03:00
kd-11
6a9eef0382 rsx/gl/vk: Enable use of native PCF shadows 2017-06-22 23:36:15 +03:00
kd-11
9aa632bcc1 rsx/vk: Fixes for ring buffer allocation and image clipping (#2850) 2017-06-10 23:32:17 +03:00
kd-11
12da498001 vk: API bug fixes - Improve spec conformity
explicitly request anisotropic filtering and BC compression

clean up a leaking framebuffer handle reference when using debug overlay

Wait for device instead of queue to ensure no conflict during renderer shutdown

Clip scissor regions when doing surface clears
2017-06-08 19:08:44 +03:00
kd-11
2556484c67 fixes to project files and build scripts
cleanup
2017-06-08 19:08:44 +03:00
kd-11
860b76452f vulkan bringup on linux
cleanup: drop unused stuff
2017-06-08 19:08:44 +03:00
kd-11
e6d55a6692 ui/vk: Reimplement vulkan GS selection; minor fixes for broken contexts on unsupported devices 2017-05-26 18:26:10 +03:00
xperia64
05b9575981 Add option to select Vulkan device (#2814) 2017-05-25 18:46:28 +03:00
kd-11
ccb23d70a5 vk: Improve flush queue sync between cell threads 2017-05-22 14:28:33 +03:00
Nekotekina
f010b5b235 Configuration simplified 2017-05-20 16:01:48 +03:00
kd-11
4b5a30f53d vulkan: Do not bother with cache checks if buffer sync is not managed
introduce pause intrin
2017-05-10 21:50:14 +03:00
kd-11
0ec88bb65d vulkan: Mark of critical code from allowing cb split in exception handler
vk: Shader loads are sacred
2017-05-10 21:50:14 +03:00
kd-11
3b27b3c182 vk: Buffer sync timing tweaks
vulkan: more sync timing fixes
2017-05-10 21:50:14 +03:00
kd-11
c7db322873 vulkan: Use non-blocking list of lists (WIP)
whitespace fix only

facepalm
2017-05-10 21:50:14 +03:00
kd-11
b78c6f7127 clear up a spec misunderstanding 2017-05-10 21:50:14 +03:00
kd-11
2b19031206 vulkan: Use a parallel cb for texture cache ops; bug fixes
vk: More surface fixes and debug stuff

vk: Crude thread sync implementation to prevent cb desync crashes due to resource usage

fix build

more fixes

vulkan: Do not flush command queue if address cannot be flushed

vk: More fixes for accuracy. Needs optimizations

vk: Batch all flush-to-buffer operations in the non-critical path
- More work is needed to make queue submission asynchronous
2017-05-10 21:50:14 +03:00
kd-11
fd754a4ddc vulkan: Start work on buffer synchronization
addendum - fix build

vulkan: separate cached section lifetime management

bug fixes
2017-05-10 21:50:14 +03:00
Jake
60ce85f840 [Render] Userclip for d12/vk/ogl (#2719) 2017-04-25 18:32:39 +08:00
raven02
24fc1027ea vk: add source alpha saturate blend factor (#2724) 2017-04-22 22:35:36 +08:00
kd-11
3ce7947dd3 rsx: Throw if user attempts to use Vulkan/DX12 without driver support 2017-04-11 13:19:31 +03:00
kd-11
3ec1fe9ee7 rsx: Fix depth clears on z16 surfaces without stencil
remove some debug code
2017-03-26 16:22:53 +03:00
kd-11
79d114cc06 rsx: Support immediate mode rendering 2017-03-26 16:22:53 +03:00
kd-11
5b0fddd3e8 gl/vk: Fix stencil ops 2017-03-25 15:07:43 +03:00
kd-11
7c73c3b75c rsx/gl: Minor refactoring; prepare vulkan backend 2017-03-01 00:16:55 +03:00
kd-11
9263999ad1 [rsx/vp] Improve BRB opcode implementation
fix merge issues
2017-02-26 10:17:34 +03:00
kd-11
d6159a35aa gl/vk/dx12: Fix texture scaling on unnormalized rtt access 2017-02-11 15:45:59 +03:00
Ryan Gonzalez
11e2965b5c Switch to always using a steady clock (closes #2200) 2017-01-29 03:07:08 +03:00
Ryan Gonzalez
b644d5b2ae Add logic_set support to VKGSRender 2017-01-28 03:20:30 +03:00
kd-11
8454949eea gl/vk/rsx: Add a cross-platform overlay text; Minor perf improvements and rsx bugfixes (#2196)
* gl/rsx: Implement platform-agnostic text overlays

gl: Restore performance metrics using new text out helper

gl/rsx: Refactor text generation class

* vk: Enable text overlay

gl/vk: Polish overlay counters implementation

gl: Better resource shutdown for text writer

* gl: Optimization, do not rebind TIUs every frame. Speedup

* gl: Optimizations and improvements to vertex upload code

* gl/vk: Texture format swizzles

vk: Texture format fix

vk: Fix YX format swizzles

* rsx: Decode vertex texture index
2016-10-11 08:55:42 +08:00
kd-11
7a9841bb2a gl/vk/dx12: Fix depth reconstruction bug; Fix sampler parameters (#2188)
vulkan: Fix duplicated code bug

fix rebase
2016-10-04 21:51:40 +08:00
kd-11
5430e1d310 rsx/gl/vk/dx12: Add emulated texture fetch for depth read (#2173)
* rsx/gl/vk/dx12: Add emulated texture fetch for depth read

gl/vk/dx12: Simplify reinterpretation equation

* gl: Remove unnecessary re-swizzle

* glsl: explicitly cast uint to float
2016-09-29 14:54:32 +08:00
kd-11
9abb908226 vk: Add a subpass dependancy (#2172) 2016-09-28 22:12:52 +08:00
kd-11
7884356e90 gl/vk: Bug fixes and improvements (#2155)
* gl: Fix broken buffer reserve computation

* gl: Texture format fixes

* gl: Two sided lighting

* gl: Always update glsl output registers

* gl: Simplify vertex input declaration

* vk: Always write output registers

* vk/gl: swizzle component read on depth textures

* gl/vk: Use proper MVP matrix

gl: fix broken mvp when window_origin=top

* vk/gl: Move fragment operations block into the proxy function
2016-09-26 20:21:17 +08:00
kd-11
66e57ae19b vk: Properly compute descriptor pool size (#2150) 2016-09-22 16:06:57 +08:00
kd-11
0d207a6c0d GL/Vulkan: Bug fixes and improvements; alphakill for vulkan (#2146)
* vk: Zero-initialize some more structs

* gl: Clean up fragment program generation code

* vk: Enable alpha kill

* vk: Fix surface clear; redirect output for surface_type:b

* vk: Tie renderpass to program object to avoid incompatible passes
2016-09-21 21:41:29 +08:00
kd-11
867e9210d7 gl/vk: Enable vertex texture fetch (#2127)
* gl: Enable vertex textures

* rsx: use textureLod instead of generic texture sample

* rsx: handle uploading of W32_X32_Y32_Z32

* gl: Re-enable proper shader logging

remove old logging method that overwrites single file

* gl: Declare texture_coord_scale for vertex samplers

* gl: texture remap fixes; enable remap for vertex textures

* gl: offset texture indices to base layer 16

* rsx: Fix W32_Z32_Y32_X32_FLOAT subresource layout

* vk: Enable vertex textures

* rsx: define special calls for vertex texture fetch

* gl: improved vertex texture fetch setup

* vk: Fix texture formats and component mapping

* vk: Implement vertex texture fetch functions properly

* vk/gl: proper fix for primitive restart index

revert inadvertent decompiler update

* gl: Disable filtering for vertex textures
2016-09-20 22:23:56 +08:00
raven02
d4a55f4b06 Vulkan: enable cull face again (#2124)
* Vulkan: enable cull face again

* minor fix
2016-09-06 09:43:27 +08:00
raven02
a270ac7f02 GL: re-use common fp/vp decompiler (#2100) 2016-08-26 22:23:23 +08:00
kd-11
9beb2d8ae0 vk/rsx: Bug fixes (#2092)
* vk: fix separate front and back lighting

* vk: Inlined arrays can have emulated primitives too!

* vk: Use float input attribs for better compatibility

* vk: Free resources during shutdown
2016-08-24 08:50:07 +08:00
raven02
2aa2c1811f Vulkan : add structure type for color blend state (#2091) 2016-08-23 19:07:51 +08:00
raven02
707523c679 Vulkan: set ColorBlendState info (used by logicOp) (#2080)
* Vulkan: set ColorBlendState info (used by logicOp)

* fix attachmentCount
2016-08-22 23:14:32 +08:00
raven02
e04de77f82 Vulkan : Ignore clear if surface target is set to CELL_GCM_SURFACE_TARGET_NONE (#2081) 2016-08-21 18:18:26 +08:00