RipleyTom
87bf0386c4
Screenshot function
2019-08-14 19:24:42 +02:00
Nekotekina
f63e89f9b4
Implement waitable atomics
...
Moved Atomic.h to util/atomic.hpp
List source files in CMakeLists.txt
2019-07-29 03:04:55 +03:00
kd-11
9a7c2784f0
rsx: Do not clip scissor to viewport when doing buffer clear
2019-07-20 16:39:32 +03:00
kd-11
e2574ff100
rsx: Support CSAA transparency without multiple rasterization samples enabled
2019-07-19 15:49:08 +03:00
kd-11
b5a2f0df68
rsx: Implement separate viewport raster clipping
...
- Merge viewport raster window and scissor into one clipping region
- Viewport raster clip is different from viewport geometry clipping in
hardware as the latter is configurable separately
2019-07-19 14:21:19 +03:00
kd-11
ea2f4d57fa
rsx: Fixups
2019-07-17 13:29:42 +03:00
kd-11
998717659f
rsx: Fix reference leak when cloning surfaces
2019-07-17 13:29:42 +03:00
kd-11
009e01a347
rsx: Set up for multi-section inheritance
2019-07-17 13:29:42 +03:00
kd-11
956270d9be
gl: Add readback/writeback config for format GL_R16
2019-07-09 16:27:59 +03:00
kd-11
50736263d2
gl: Fix native pitch computation
2019-07-08 18:04:56 +03:00
Malcolm Jestadt
b5d5113803
gl: Workaround slow PBO usage with Mesa
...
-Mesa is currently fastest with GL_STREAM_COPY
-See a338dc0186
-Also see https://bugs.freedesktop.org/show_bug.cgi?id=111043
2019-07-03 11:28:29 +03:00
Eladash
43f919c04b
Fixup after #6143 ( #6146 )
...
vm::spu max address was overflowing resulting in issues, so cast to u64 where needed. Fixes #6145 .
Use vm::get_addr instead of manually substructing vm::base(0) from pointer in texture cache code.
Prefer std::atomic_thread_fence over _mm_?fence(), adjust usage to be more correct.
Used sequantially consistent ordering in semaphore_release for TSX path as well.
Improved memory ordering for sys_rsx_context_iounmap/map.
Fixed sync bugs in HLE gcm because of not using atomic instructions.
Use release memory barrier in lwsync for PPU LLVM, according to this xbox360 programming guide lwsync is a hw release memory barrier.
Also use release barrier where lwsync was originally used in liblv2 sys_lwmutex and cellSync.
Use acquire barrier for isync instruction, see https://devblogs.microsoft.com/oldnewthing/20180814-00/?p=99485
2019-06-29 18:48:42 +03:00
JohnHolmesII
a124ec4a26
Remove braces around shader source strings (warnings)
2019-06-28 01:45:29 +03:00
JohnHolmesII
23094b48bb
Fix warnings related to -Wswitch
...
Add default cases.
Move default breaks to newline
Add proper handling in some instances.
Add missing enums to switches
2019-06-28 01:40:52 +03:00
kd-11
d26b25816d
rsx: Improve profiling setup
...
- Avoid spamming QPC when not needed
- Free performance when debug overlay is not enabled
2019-06-25 20:50:54 +03:00
kd-11
c32c1b0a62
gl: Minor API tweaks
...
- Avoid spamming the driver with samplerParameter calls unless the parameters have actually changed
2019-06-25 20:50:54 +03:00
kd-11
59ee74a275
rsx: Disable vertex cache if multithreaded memory access is enabled
...
- When multithreaded RSX is enabled, the vertex cache just lowers performance
- The small cost of upload is paid by the asynchronous thread, allowing RSX to work optimally
2019-06-25 20:50:54 +03:00
kd-11
6be7c58fa4
glsl: Refactoring, cleanup and optimizations
...
- Avoid generating unused code
- Reduce GPR usage in emitted code
2019-06-25 20:50:54 +03:00
Lassi Hämäläinen
c963c51a60
Remove unnecessary header includes
...
- Manually removed lot of unneeded #includes to clean code and reduce
compilation time
- Reordered some of the #includes to be in more logical order
2019-06-25 17:11:10 +03:00
Lassi Hämäläinen
a070a414a6
Move rsx::constants and rsx::limits to rsx_utils.h
2019-06-25 17:11:10 +03:00
Lassi Hämäläinen
e9e87b8bd9
Add missing #includes to header files
...
- Multiple header files where missing #includes to other headers that
where used in the header. Correct header was included in correct
order in source files which caused everything to compile.
- Added missing #includes so header files correctly include all their
dependencies and fixes problems with IDEs being unable to parse
headers correctly due to missing symbols
2019-06-25 17:11:10 +03:00
scribam
185fd3d257
rsx: Minor cleanup after #6055
2019-06-17 00:31:38 +03:00
kd-11
e4671c29a6
rsx: Fix typo
...
- Arguments to the transform function are xxyy not xyxy
2019-06-14 16:19:52 +03:00
kd-11
8a1cf2c913
rsx: Attempt to reduce stencil load overhead for nvidia cards
2019-06-14 16:19:52 +03:00
kd-11
4a5bbba277
rsx: Enable MSAA
...
- vk: Enable depth buffer resolve+unresolve
- vk: Add AMD stenciling extension support
- rsx: Temporarily disables MSAA-compatible hacks such as transparency AA
- TODO: Add paths to optionally disable MSAA
2019-06-14 16:19:52 +03:00
kd-11
f6f3b40ecc
rsx: Fix AA coordinate transforms
...
- Requires native_pitch value to take samples into account
2019-06-14 16:19:52 +03:00
kd-11
655eff29e8
rsx: Refactoring and cleanup after d3d12 separation
...
- Remove deprecated functionality
- Refactor to share code between common routines
2019-06-14 16:19:52 +03:00
kd-11
0d906d6974
rsx: Remove surface aa_mode hacks
2019-06-14 16:19:52 +03:00
scribam
13671d9684
rsx: Apply Clang-Tidy fix "modernize-loop-convert" + const when relevant
2019-06-12 15:11:52 +03:00
scribam
370dcd9d6e
rsx: Apply Clang-Tidy fix "readability-simplify-subscript-expr"
2019-06-12 15:11:52 +03:00
scribam
f1e939936a
rsx: Apply Clang-Tidy fix "modernize-use-override"
2019-06-12 15:11:52 +03:00
scribam
44265aa27d
rsx: Apply Clang-Tidy fix "modernize-use-equals-default"
2019-06-12 15:11:52 +03:00
scribam
635695ac78
rsx: Apply Clang-Tidy fix "modernize-use-emplace"
2019-06-12 15:11:52 +03:00
scribam
a02a8642b0
rsx: Apply Clang-Tidy fix "modernize-make-unique"
2019-06-12 15:11:52 +03:00
scribam
b91bcdbbca
rsx: Apply Clang-Tidy fix "modernize-use-bool-literals"
2019-06-12 15:11:52 +03:00
scribam
349e7c8708
rsx: Apply Clang-Tidy fix "readability-non-const-parameter"
2019-06-12 15:11:52 +03:00
scribam
ac7e89660f
rsx: Apply Clang-Tidy fix "readability-redundant-smartptr-get"
2019-06-12 15:11:52 +03:00
scribam
801fa0113f
rsx: Apply Clang-Tidy fix "readability-inconsistent-declaration-parameter-name"
2019-06-12 15:11:52 +03:00
scribam
8f2647555a
rsx: Apply Clang-Tidy fix "readability-redundant-string-init"
2019-06-12 15:11:52 +03:00
scribam
331fe01762
rsx: Apply Clang-Tidy fix "performance-for-range-copy"
2019-06-12 15:11:52 +03:00
scribam
db926ee671
rsx: Apply Clang-Tidy fix "performance-unnecessary-value-param"
2019-06-12 15:11:52 +03:00
scribam
c4667133c4
gl/vk: Add constexpr to varying_registers and sync functions between the two backends
2019-06-12 10:59:31 +01:00
kd-11
d361eedbec
rsx: Clean up window management code
...
- Removes a lot of wm_event code that was used to perform window management and is no longer needed.
- Significantly simplifies the vulkan code.
- Implements resource management when vulkan window is minimized to allow resources to be freed.
2019-06-10 14:57:03 +03:00
Nekotekina
dfd50d0185
Implement std::bit_cast<>
...
Partial implementation of std::bit_cast from C++20.
Also fix most strict-aliasing rule break warnings (gcc).
2019-06-02 23:22:16 +03:00
scribam
09c9996f31
Use empty() instead of comparing size() with 0
...
Recommendation from Clang-Tidy: https://clang.llvm.org/extra/clang-tidy/checks/readability-container-size-empty.html
2019-06-01 22:59:23 +03:00
scribam
78c7ef3039
rsx: Use clear() instead of resize(0)
...
The result is the same but clear [1] has slightly less code than resize [2] and signals better the intent IMHO.
[1] fb7fb646fa/libstdc%2B%2B-v3/include/bits/stl_vector.h (L1495)
[2] fb7fb646fa/libstdc%2B%2B-v3/include/bits/stl_vector.h (L934)
2019-06-01 22:59:23 +03:00
msuih
ef587d4cdc
Limit shaderlog writing behind log_programs setting
2019-05-31 19:49:32 +03:00
kd-11
c3b234f972
gl: Fix staging buffer size calculation
2019-05-22 01:18:46 +03:00
kd-11
05eb1e9193
rsx: Fix zombie image references from inside the texture cache
...
- Do not add locked orphans to the flush_always cache! They will not remove their cache entries as they are not bound
2019-05-16 19:25:26 +03:00
kd-11
214bb3ec87
rsx: Always initialize memory unless it is guaranteed to be wiped
2019-05-16 19:25:26 +03:00