microsoft / WSA

Developer-related issues and feature requests for Windows Subsystem for Android
MIT License
1.51k stars 828 forks source link

Vulkan support #59

Open ghost opened 1 year ago

ghost commented 1 year ago

Is your feature request related to a problem? Please describe

No response

Describe the solution you'd like

Implement Vulkan1.3 in WSA, Android13 already supports Vulkan1.3

Describe alternatives you've considered

No response

Have you set this feature request's Milestone field to Future Release?

hamza-usmani commented 1 year ago

Hi, this is something on our radar already for new feature requests, we appreciate the feedback here!

oscarbg commented 1 year ago

+1

LimeVista commented 1 year ago

+1

mobile-mediaservice commented 1 year ago

+1

PeterNjeim commented 1 year ago

Indeed there are many games that require Vulkan, switching away from ANGLE would be beneficial

WesleyVanNeck commented 1 year ago

If Vulkan1.3 is implemented, it can also provide full OpenGL ES 3.2 support through Zink, with the same level of graphics API as flagship smartphones in 2023, instead of low-performance ANGLE ES 3.0

yes but wouldnt this only work for nvidia 16 series and up

WesleyVanNeck commented 1 year ago

If Vulkan1.3 is implemented, it can also provide full OpenGL ES 3.2 support through Zink, with the same level of graphics API as flagship smartphones in 2023, instead of low-performance ANGLE ES 3.0

yes but wouldnt this only work for nvidia 16 series and up

https://vulkan.gpuinfo.org/displayreport.php?id=20666

That's on windows but the subsystem is semi Linux?

WesleyVanNeck commented 1 year ago

Any news on this

nieubank commented 1 year ago

Nothing to report just yet. It's actually difficult to find Android apps or games that use Vulkan so if you have examples that would be appreciated. Many that claim to are actually using GLES3.1 or 3.2.

we684123 commented 1 year ago

! @nieubank

I've been following this issue for a long time, I've always wanted to play Sky: Children of the Light on my computer. It has the following requirements:

Android 8 or above
An x64 ARM CPU
At least 1.5 GB of RAM
Supports OpenGLES 3.1
Vulkan 1.0.3 or higher
Vulkan level must be at level 0 or above.

I hope this helps. 2021-10-31 06_18_53-

PeterNjeim commented 1 year ago

@nieubank I believe Call of Duty: Mobile uses Vulkan

celozaga commented 1 year ago

Nothing to report just yet. It's actually difficult to find Android apps or games that use Vulkan so if you have examples that would be appreciated. Many that claim to are actually using GLES3.1 or 3.2.

Sky: Children of the Light and Star Wars: Hunters, although both also support Open GL 3.2+.

andybak commented 1 year ago

Nothing to report just yet. It's actually difficult to find Android apps or games that use Vulkan so if you have examples that would be appreciated. Many that claim to are actually using GLES3.1 or 3.2.

Just build a simple Unity app and turn on Vulkan in the Player Settings. Any of the default templates will be enough to verify whether it runs or not.

nieubank commented 1 year ago

WSA2307's Vulkan performance is quite good, but the extensions are too few to even meet the requirements of VP_ANDROID_baseline_2021.

There are some problems with WSA's Vulkan driver.

  1. unconditionally expose all queue families of the host Vk driver image
  2. VRAM is hardcoded to 2GiB image

Thanks for this good feedback. Vulkan support is still very much in preview and will continue to improve over time. This is essentially just an MVP to start getting some usage and feedback like yours here.

bishalghimire007 commented 1 year ago

Thank for vulkan support but where is opengl 3.1 and 3.2 support? Some games still needs it..

mio-19 commented 1 year ago

! @nieubank

I've been following this issue for a long time, I've always wanted to play Sky: Children of the Light on my computer. It has the following requirements:

Android 8 or above
An x64 ARM CPU
At least 1.5 GB of RAM
Supports OpenGLES 3.1
Vulkan 1.0.3 or higher
Vulkan level must be at level 0 or above.

I hope this helps. 2021-10-31 06_18_53-

On WSA 2307.40000.3, there is only one item left:

image

nieubank commented 1 year ago

I can't share any specifics but GLES 3.1 is still very much on our radar.

KingKrouch commented 1 year ago

Yeah, with the new D3D12 Vulkan driver, I'm having crashing issues with games like Blue Archive. I'm unsure if this is down to something relating to unimplemented functionality or something else.

EDIT: Just tried 3D Mark, and it says there's some unsupported Vulkan extensions. Attempting to run any of the benchmarks will crash the app.

VLTHellolin commented 11 months ago

I am also looking forward to the progress of this issue. When I play games like Blue Archive using WSA, sometimes the WSA screen shakes, sometimes there are flickering or crashes.

I just ran a benchmark test, during the test, the task manager showed that the CPU was fully utilized, but only half of the GPU resources were being used at most.

WSA Version: 2307.40000.6.0

Update: If you are a BA player and have the same problem as me, try changing the option under "渲染加速模式(Accelerated Rendering Mode)" to "兼容(Compatibility)" or "關閉(Off)" in the game settings. This will help alleviate the abnormal display issues.

KingKrouch commented 7 months ago

I am also looking forward to the progress of this issue. When I play games like Blue Archive using WSA, sometimes the WSA screen shakes, sometimes there are flickering or crashes.

I just ran a benchmark test, during the test, the task manager showed that the CPU was fully utilized, but only half of the GPU resources were being used at most.

WSA Version: 2307.40000.6.0

Update: If you are a BA player and have the same problem as me, try changing the option under "渲染加速模式(Accelerated Rendering Mode)" to "兼容(Compatibility)" or "關閉(Off)" in the game settings. This will help alleviate the abnormal display issues.

Wouldn't that just disable GPU acceleration in-game? Are there any performance differences between playing the game entirely in software mode with accelerated rendering in-game disabled vs with the D3D12 Vulkan driver enabled?