Can you tell Android how to support Vulkan in UE4.12?

Can you tell Android how to support Vulkan? For example: how to set up, as well as NDK, SDK, JDK, ANT version. Now there is no documentation on this aspect.

It is best to use the CodeWorks for Android installer we include in Engine/Extras/AndroidWorks in 4.12. This includes NDK 11c which has the Vulkan headers. It also installs JDK 1.7 and ANT 1.8.2 along with SDK for 19 and 21.

To use Vulkan you will need to use GitHub source release. Turn on the Support Vulkan flag in Android Project Settings. At the moment this works on S7 and will work as new drivers are released for Android N previews.

If you have a Vulkan PC driver you can turn on the Vulkan Mobile Preview in PIE in the editor experimental settings.

Hi Chris!
As 4.12 supports Vulkan, do we still need the Github source? I can’t enable it in the Android settings, it is grayed out and says it requires it, but maybe I did something wrong.

Cheers,
Fisher

4.12 binary from launcher has the UE4-VulkanRHI* libraries precompiled but the “Support Vulkan [Experimental]” checkbox in Android Project Settings is grayed out. You can either use a GitHub build which will ungray it, or manually edit the DefaultEngine.ini in your project’s Config directory and add “bSupportsVulkan=true” to the [/Script/AndroidRuntimeSettings.AndroidRuntimeSettings] section.

Adding manually helped, now it is checked. But how do I know if my S7 actually running using Vulkan? I don’t see any difference in quality or performance. (I have downloaded the new CodeWorks and switched all the paths in the Android SDK settings)

Forgot to mention that I’m trying to use it with the Gear VR if that matters.

Look in the logcat for “Compiled with Vulkan support” and “Vulkan driver available, will use VulkanRHI” or “Vulkan driver NOT available, falling back to OpenGL ES” or “Vulkan library NOT detected, falling back to OpenGL ES”.

I had another look at the code and you likely need to use GitHub after all. It won’t compile in the check for Vulkan I believe as built in the binary. If you don’t see the “Compiled with Vulkan support” or “Compiled with OpenGL ES support only” then this is the problem.

Yep, there is no mention of Vulkan in the log file.(Phonememory…\MyProjectName\MyProjectName\Saved\Logs)
So I guess it is indeed not using Vulkan, which is sad as I’m not able to compile the Github build (Visual studio gives errors) and I’m not really familiar with VS or the coding side of the engine. But this is really strange, why state that Vulkan is included in 4.12 if it isn’t? Is there any plans to add to the precompiled version?

Vulkan is experimental, but it looks like the detection code was left wrapped with PLATFORM_ANDROID_VULKAN in 4.12. This will be corrected in 4.13.

Hi Chris,

Can you confirm that it has indeed corrected in 4.13? I can’t find it in the changelog.