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

Support vulkan on linux #2842

Merged
merged 5 commits into from Jun 8, 2017

Conversation

Projects
None yet
5 participants
@kd-11
Copy link
Contributor

kd-11 commented Jun 6, 2017

This PR enables building rpcs3 on linux with working vulkan support. List of changes includes:

  • Fix build scripts to allow building on linux with working vulkan support
  • Drop unused stuff from the main rpcs3 project
  • Reworks cmake scripts a bit to make cmake behave in a more predictable manner including deleting autogenerated Qt moc files when running 'make clean'
  • Fix a few vulkan API spec violations. Fixes a free-during-use on a leaky handle when the debug overlay is enabled. Also clips clear rects to always fit within the current render target.

As noted in the title, this PR is WIP

@mention-bot

This comment has been minimized.

Copy link

mention-bot commented Jun 6, 2017

@kd-11, thanks for your PR! By analyzing the history of the files in this pull request, we identified @Nekotekina, @vlj and @O1L to be potential reviewers.

@AniLeo

This comment has been minimized.

Copy link
Contributor

AniLeo commented Jun 6, 2017

Solves #1752 , #2186 , #2255 , #2479 (Controller issue will remain but there's #2678 for it)

@kd-11

This comment has been minimized.

Copy link
Contributor Author

kd-11 commented Jun 6, 2017

Looks like vulkan.7z needs to be repackaged for appveyor. Had to update vulkan submodules due to a gcc conflict between <math.h> and <cmath> that was fixed upstream.

@mrcmunir

This comment has been minimized.

Copy link

mrcmunir commented Jun 7, 2017

Good up to changes

in vulkan mesa3d driver does not support the VK_FORMAT_D24_UNORM_S8_UINT !?

Returned St13runtime_error thrown: No hardware support for z24s8 I reported this year ago in mesa3d dev's but not changed yet.

If disable this check will run vulkan backend but some glitches / inverted colour like this

captura de 2017-06-07 20-47-20
captura de 2017-06-07 20-47-04

@kd-11

This comment has been minimized.

Copy link
Contributor Author

kd-11 commented Jun 7, 2017

Interesting on the d24s8 issue. I did not notice it. Been having some X hangups with radv making it harder to fix everything, but I'm ironing out the remaining issues.
BTW radeon hardware does not support 24-bit depth, instead jumping from 16-bit to 32-bit. A minor workaround should fix it.

@kd-11 kd-11 force-pushed the kd-11:vulkan-linux branch from 42bd34d to aa8d82b Jun 7, 2017

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup />
</Project>

This comment has been minimized.

@Zangetsu38

Zangetsu38 Jun 7, 2017

Contributor

this file already exist, it is rpcs3.vcxproj.user ^^, i fix this problem in my pr

This comment has been minimized.

@kd-11

kd-11 Jun 7, 2017

Author Contributor

Added this file by mistake. This commit should only be about the leaking direct_fbo handle

This comment has been minimized.

@Zangetsu38

Zangetsu38 Jun 7, 2017

Contributor

oh ok :)

@kd-11 kd-11 force-pushed the kd-11:vulkan-linux branch 3 times, most recently from 51b72e5 to a92c17b Jun 7, 2017

@kd-11 kd-11 changed the title [WIP] Support vulkan on linux Support vulkan on linux Jun 7, 2017

kd-11 added some commits May 29, 2017

vulkan bringup on linux
cleanup: drop unused stuff
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

@kd-11 kd-11 force-pushed the kd-11:vulkan-linux branch from a92c17b to cf76b05 Jun 8, 2017

@kd-11 kd-11 merged commit fab6951 into RPCS3:master Jun 8, 2017

2 checks passed

continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details

@kd-11 kd-11 deleted the kd-11:vulkan-linux branch Oct 13, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment