kd-11
7ab1792ef7
rsx: Implement conditional locks
2017-08-06 14:29:42 +03:00
Jake
d9a693019b
rsx/gcm: Implement rsx dma. Refactor gcm/rsx to not be as codependent
2017-08-02 01:33:12 +03:00
mp-t
607d2486ea
Code review ( #3114 )
...
* Fix always-true conditions in sceNp module
* gl_render_targets: useless check on unsigned variable, possible bug
* fixed UB in crypto utility functions
* copy-paste error in vk::init_default_resources
* pass strings by const ref
* Dont copy vectors. Make sure copies are not needed because functions are used in a multi-threaded context.
2017-08-01 20:22:33 +03:00
kd-11
f613901eac
gl/vk: Do not trust gcm buffer size to match internal rendering resolution
...
- Should fix games with strange scaling artifacts due to upscaling from lower resolutions
2017-07-27 14:33:30 +03:00
kd-11
4cd5624fa7
rsx/vk/gl: Refactoring - Also adds a vertex cache to openGL as well
2017-07-27 14:33:30 +03:00
kd-11
fb7ccbd7b4
vulkan: Workaround to avoid lockup due to double fault
...
- TODO: Ensure no page faults occur within a page-fault handler!
2017-07-27 14:33:30 +03:00
kd-11
dd19622823
vulkan: Texture cache rewritten - Use a map of vectors instead of a flat array
2017-07-27 14:33:30 +03:00
kd-11
46fa6e47fe
rsx/vk: Vertex cache rewritten, add option to disable it as well
...
- Also enable SPU loop detection by default while were at it
2017-07-27 14:33:30 +03:00
kd-11
3b03f9a010
vulkan: Avoid double flushing if a texture is externally synchronized
2017-07-24 16:52:42 +03:00
kd-11
a24780fe5e
vulkan: Avoid cache miss whenever possible if WCB is enabled
2017-07-24 16:52:42 +03:00
kd-11
425821863b
vulkan; Add a weak vertex cache with single frame validity
2017-07-24 16:52:42 +03:00
kd-11
6557bf1b20
rsx: More aggressive thread scheduling for vertex processing
...
- Significantly helps vertex performance
- Not recommended as more threads will harm performance if the PC does not have the cores for it
2017-07-24 16:52:42 +03:00
kd-11
df8fa74e2a
vulkan hotfix ( #3046 )
...
* Rework vertex attribute binding for vulkan. Allows always providing a buffer view to the pipeline even if the game has the attribute disabled as long as it is consumed by the vertex shader.
2017-07-22 01:54:28 +03:00
kd-11
2526626646
rsx: Surface cache bug fixes
...
- Properly handle data 'transfer' when recycling frame buffer images
- Clear 'recycled' surfaces before use
2017-07-19 23:28:33 +03:00
kd-11
94c1b74a17
fix build; restore asmjit reader_lock for now
2017-07-19 23:28:33 +03:00
kd-11
05ffb50037
vk/rsx: Bug fixes and improvements
...
- Improvements to framebuffer usage; Avoid creating new resources every frame
- Handle null fragment program properly
- Collect vertex upload statistics
- vk: Pre-initialize 'unused' varying registers in the vertex shader in case it gets matched with a fs that consumes it
-- Fixes a crash about fog_c not being declared
gl/dx12/vk: Handle null fragment program
- cleanup - use yield semantic instead of sleep(0) as yield is more cross-platform
-- sleep(0) is a windows specific scheduler hint
2017-07-19 23:28:33 +03:00
kd-11
f69121116a
rsx/vk: Optimize framebuffer lifetime management
...
- Significant gains due to avoiding aggressive create-delete cycles every frame
2017-07-19 23:28:33 +03:00
raven02
2e47c42367
Add Stretch to Display Area option ( #2961 )
2017-07-08 16:06:11 +03:00
kd-11
9e7a42d057
rsx: Minor bug fixes
...
- vk: Do not select first available format when choosing a swapchain format
- gl/vk: Ignore rendering zero sized framebuffers/scissors
- fp: Re-enable range clamp on fp16 registers; fix fx12 clamping [-2, 2]
2017-07-08 14:52:16 +03:00
kd-11
c788331e45
vk: Fix layout transitions
2017-07-08 14:52:16 +03:00
kd-11
3d935b64f2
rsx/gl/vk: Enable contents transfer when a new framebuffer is created and not cleared
2017-07-08 14:52:16 +03:00
kd-11
e9b8f94fb1
rsx/gl/vk: Enable frame skipping
2017-07-08 14:52:16 +03:00
kd-11
b95ffaf4dd
rsx: Implement skip draw. Also, start working on MT vertex upload
2017-07-08 14:52:16 +03:00
Zangetsu38
253e7a90b8
vk: add "add_signed" in blend op.
2017-06-30 18:40:40 +03:00
kd-11
a69f19a9ab
rsx/decompilers: Avoid std::endl like the plague. It adds extra processing overhead
2017-06-29 13:13:19 +03:00
kd-11
3651e67a25
vk: Fix mapping of output colors to render target ranges
2017-06-29 13:13:19 +03:00
kd-11
1887e2460f
rsx: Use loose memory protection on textures since they're almost guaranteed to be wholly moved when changing. Speedup.
2017-06-29 13:13:19 +03:00
kd-11
6e578c4fde
rsx: Initialize declared but unset varying variables to all ones
2017-06-29 13:13:19 +03:00
kd-11
47e5074dc5
rsx: Emulated index buffers are based on vertex 0 with no disjoint ranges
...
- Drop the 'first' argument as it is unused for now
2017-06-29 13:13:19 +03:00
kd-11
72edf26fb8
rsx/gui: Add a strict mode toggle. Also reorganizes the graphics tab a bit
...
code cleanup
2017-06-22 23:36:15 +03:00
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
5f180e0b30
vk: Prefer optimal formats when clearing buffers
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
75964c686f
rsx/gl/vk: Fix some warnings and whitespace issues (LF vs CRLF)
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
db1a90d828
rsx: Discard surface store contents once per frame (temp workaround)
...
Need to find the proper command issued to discard all surfaces
2017-06-22 23:36:15 +03:00
kd-11
110974af0b
vk/gl: Fix sampling of shadow2D textures
2017-06-22 23:36:15 +03:00
kd-11
b50d5107b3
rsx/vk/gl: Minor fixes
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
5f66d0b996
rsx/wip: Fix depth surface reuse and clearing (fixes shadows)
2017-06-22 23:36:15 +03:00
kd-11
701728ecd7
rsx: Fix depth-as-rgba read in fp
2017-06-22 23:36:15 +03:00
Jake
23d1ddbb8e
Dx12/Vulk: Fix KernelBase.dll crash ( #2870 )
2017-06-13 11:36:42 +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