kd-11
d54c2dd39a
gl: Move vertex processing to the GPU
...
- Significant gains from greatly reduced CPU work
- Also reorders command submission in end() to improve throughput
- Refactors most of the vertex buffer handling
- All vertex processing is moved GPU side
2017-08-16 23:58:30 +03:00
Jake
fff34a7f0f
d3d12: Fix 0 sized framebuffer crashes
2017-08-02 01:33:12 +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
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
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
a69f19a9ab
rsx/decompilers: Avoid std::endl like the plague. It adds extra processing overhead
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
74d8619240
dx12: Fix error reporting
2017-06-29 13:13:19 +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
98cf72e0fb
rsx: Fix clip space computations
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
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
Nekotekina
f010b5b235
Configuration simplified
2017-05-20 16:01:48 +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
c5975d5f66
rsx: Vertex program output fixes
2017-05-12 20:10:03 +03:00
Jake
ac58953276
Fix typo/spacing from userclip
2017-04-29 01:26:03 +03:00
Jake
60ce85f840
[Render] Userclip for d12/vk/ogl ( #2719 )
2017-04-25 18:32:39 +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
909f3e9b3e
rsx: Support indexed immediate draw via ArrayElement method
2017-03-29 23:06:17 +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
8fa3f0721e
fix false alphakill flags when texture fetch is optimized away
2017-03-24 09:30:23 +03:00
kd-11
be4bb48476
rsx/fp: Fix some decompiler bugs
2017-03-13 23:40:34 +03:00
Nekotekina
78703cfe47
Use utils::memory_protect
2017-03-13 13:16:22 +03:00
raven02
a168aa2df3
DX12: fix DRGB8 texture format ( #2480 )
...
* DX12: set native sampler format to BGRA8
* DX12: fix DRGB8 texture format
2017-03-07 19:34:09 +08:00
kd-11
1e71285de8
gl/vk/dx12: Implement forced channel remapping
...
gcc fix
2017-03-06 14:34:29 +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
Jake
a886e28f87
Fix nv3089_image_in
...
- Restrict clip_x/y
- Remove double offset addition
2017-02-17 18:33:56 -06:00
Zangetsu38
682924b51a
D3D12: add DXGI_FORMAT_B8G8R8A8_UNORM missing ( #2385 )
2017-02-15 00:29:43 +08:00
kd-11
d6159a35aa
gl/vk/dx12: Fix texture scaling on unnormalized rtt access
2017-02-11 15:45:59 +03:00
Zangetsu38
73906f9f29
d3d12: add x1r5g5b5_z1r5g5b5 and cleanup in D3D12Formats.
...
Add info in BufferUtils for log.
2017-02-10 22:04:45 +03:00
raven02
f84b2f072f
D3D12: add missing logic set
2017-02-06 12:34:20 +03:00
Ryan Gonzalez
11e2965b5c
Switch to always using a steady clock ( closes #2200 )
2017-01-29 03:07:08 +03:00
Nekotekina
d4c3905355
Debug build fix
2017-01-28 15:32:45 +03: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
38562155d4
gl/vk: Flip wpos if origin != top
2016-09-28 07:22:45 +08:00
raven02
38f35df7b6
DX12: enable alpha kill ( #2158 )
2016-09-26 18:38:52 +08:00
vlj
6b7ce37374
rsx: vertex attribute size is 1 again for CMP, let backend handles this formats properties.
2016-09-22 15:44:59 +02:00
raven02
77f8ce503d
RSX texture refactor ( #2144 )
2016-09-19 09:25:49 +08:00
vlj
8d54bcbc0d
rsx: Use variant based draw commands.
2016-09-17 23:37:52 +02:00
vlj
03c86ae43b
rsx: Move inline array to draw_clause structure.
2016-09-17 23:37:52 +02:00
vlj
14205d3d1c
d3d12: CMP vertex format has 4 members.
...
Fix 1878
2016-09-12 00:20:11 +02:00
vlj
30b804e0bc
d3d12: Fix a potential race condition.
2016-09-12 00:20:10 +02:00
vlj
153f1cc50a
d3d12: Always set transform constant when debug output is enabled.
2016-09-12 00:20:10 +02:00