-
-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
rsx: Enable multisampling #6055
Conversation
kd-11
commented
Jun 6, 2019
- Adds MSAA support (vulkan only for now since almost all testers will run vulkan)
- Completely refactors out D3D12 as it was holding back progress with shared code.
- Minor improvement to fp decompiler input modifiers.
Resistance 2 layout(std140, set=0, binding=0) uniform static_data{ ivec4 regs[8]; }; void main() F {RSX [0x7075ab4]} RSX: class std::runtime_error thrown: Verification failed (e=0x7f): AA Disabled F {RSX [0x7075ab4]} RSX: class std::runtime_error thrown: Verification failed (e=0x7f): Same for Killzone 2 |
Resolve shader message is unrelated. I just left it as log_error in case of compilation errors. |
Well it's just verification fail then, and even if i disable it the game still ends with some error |
Yea, looks like some files on my end are corrupted; I'm reinstalling some demos and re-running more tests. The verification crash at least is reproducible. |
Killzone 2 fails for me too, even after nuking all the caches. |
Fixed the VkRenderTargets.h crash caused by only testing MSAA x2 during development. MSAA x4 was completely broken which is what killzone 2 is using. |
Several other issues identified by testers and under investigation (avoid repeating these):
|
@@ -234,17 +218,12 @@ void GLGSRender::init_buffers(rsx::framebuffer_creation_context context, bool sk | |||
|
|||
const u8 color_bpp = get_format_block_size_in_bytes(layout.color_format); | |||
const u8 depth_bpp = (layout.depth_format == rsx::surface_depth_format::z16 ? 2 : 4); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the variable depth_bpp
can be removed unless you prefer to replace:
m_depth_surface_info.bpp = (layout.depth_format == rsx::surface_depth_format::z16? 2 : 4);
by
m_depth_surface_info.bpp = depth_bpp;
;=; how do I try this? |
Click show all checks below. |
D3D12 renderer selection box will be removed as well ? |
d3d12 is not yet fully removed |
Maybe show the differences clearly? I cannot spot any differences since I'm not familiar with those games. There are some tweaks to the fragment decompiler based on hardware testing on a PS3, but I still have doubts as to the accuracy; if the commit is wrong compared to PS3 I can revert it from the PR and submit it separately at a later date. |
DX12 isn't being improved. I'd say that we are one step closer to removal with this PR (I think) |
TTT2 still crashes in Fallen Garden with MSAA enabled: Killzone 2 has flickering shadows and blurred graphics. |
13176cc
to
12a0809
Compare
I got a better scenario with Ishin which is way more clear. Took screenshots in the main menu including how it looks on a PS3. |
- Remove deprecated functionality - Refactor to share code between common routines
- Requires native_pitch value to take samples into account
- 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
- Resolve image first before performing any transfer operations
- TODO: Option to completely skip clamping in some architectures as it is not needed in most games - Mostly affects older GPUs that do not have access to native fp16
- Refactor overlays and resolve passes to support use of push constants instead of relying buffer map/unmap - Add support for nvidia resolve (NV is the only vendor not supporting shader_stencil_export)
- Arguments to the transform function are xxyy not xyxy
…henever the parent is written to - Fixes successive reads of an antialiased surface that is still bound between reads
- Missing ref increment when using framebuffer could lead to use-after-free. How master was not crashing is surprising
TTT2 crash is now fixed. |
Hello anyone able to fix Dynasty Warriors Gundam Reborn crash ? |
Whats so wrong into bringing the crash from Dynasty Warriors Gundam Reborn to a developer's attention? Game crashes for years with same error so i dont see any update fixing it. Thanks |
Because it's completely unrelated to this PR |
You're wasting a developer's time with a false regression report, it's completely unrelated to this pull request |
Still this is not a reason for hate. |