kd-11
fcb7072fee
Implement hardware zcull emulation
...
rsx/gl: Support s1 immediate values; ogl minor refactoring
2017-08-06 14:29:42 +03:00
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
cb194e06ce
gl: Fix framebuffer validity checks
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
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
scribam
2d037fa130
Remove "#pragma once" directive in a cpp file
2017-07-14 01:46:07 +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
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
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
9cb58a47cd
gl: Avoid creating surface copies when strict mode is disabled.
2017-06-29 13:13:19 +03:00
kd-11
8a0f6f1cbc
gl: Fix legacy ring buffer address alignment
...
- Should always return a base address aligned to the buffers alignment.
- Fixes renderdoc crashes when capturing
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
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
84ae1c5214
gl: Silence log spam
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
30f276a49b
gl: Properly emulate signed normalized wide integers
...
Another fix for signed normalized formats; single component vectors are swizzled
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
69d3d47901
gl: Fix clip-space -> depth conversion. Fixes remaining depth read issues
...
- Also set some default values for samplers in a cleaner way using their 'natural' float values
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
kd-11
9aa632bcc1
rsx/vk: Fixes for ring buffer allocation and image clipping ( #2850 )
2017-06-10 23:32:17 +03:00
kd-11
860b76452f
vulkan bringup on linux
...
cleanup: drop unused stuff
2017-06-08 19:08:44 +03:00
kd-11
d5df4a4616
rsx/fp/gl: Minor fixes ( #2823 )
...
* rsx/fp: expand glsl unpack instructions to vec4
* rsx/fp: Ignore BRK outside LOOP/REP
* fix string compare typo
2017-06-01 15:53:25 +03:00
kd-11
0efc3c1c6c
rsx: Relax restriction on vertex register data fetch
2017-05-22 14:28:33 +03:00
kd-11
e8b4d332eb
rsx: Use faster upload path when conditions allow
...
Fix aligned memory access (SSE)
rsx: BufferUtils; always use optimized paths
2017-05-22 14:28:33 +03:00
Nekotekina
f010b5b235
Configuration simplified
2017-05-20 16:01:48 +03:00
kd-11
c26607de08
gl: Strict export of diff_color and spec_color for mesa compatibility ( #2779 )
...
* gl: Strict export of diff_color and spec_color for mesa compatibility
* gl: Relax the front_diff/spec rules a little
2017-05-14 11:50:24 +03:00
shameful
e93c4c42b6
fix for shader fog mode exponential2_abs ( #2781 )
...
* Update VKFragmentProgram.cpp
added missing exponent parameter
* fixed misplaced exponent in VKFragmentProgram.cpp
parameter that belonged to pow() was being passed to exp() instead, causing the shader compilation to fail
* fix for opengl fog_mode exponential2
same fix as the vulkan version
* directx fog_mode exponential2 fix
misplaced parameter
* directx fog_mode exponential2_abs fix
* vulkan fog_mode exponential2_abs fix
* opengl fog_mode exponential2 fix
2017-05-14 12:56:24 +08:00
kd-11
d24ba0da90
gl: Workaround to detect opengl driver caps for intel
2017-05-12 20:10:03 +03:00
kd-11
7460bdfb1b
gl: Use strict vertex output declaration for better compatibility with mesa
2017-05-12 20:10:03 +03:00