The first developer preview of the upcoming Vulkan renderer for Unity, as announced at Google I/O. Vulkan is a new generation graphics and compute API that provides high-efficiency, cross-platform access to modern GPUs in both PCs and on mobile platforms. The recently released Android Nougat version from Google brings official support for the Vulkan API, and we’re working towards enabling our users to boost the graphics performance to the next level.
This preview build has Vulkan support enabled for the following targets:
- Windows standalone (no Vulkan support in the editor yet)
- Linux standalone
On Windows, we’ve been mainly testing on Nvidia and AMD GPUs. Remember to update your GPU drivers! Vulkan is a new technology and the drivers keep improving constantly, so before reporting a crash, check first if an updated driver fixes the problem.
On Android, we’ve tested on the following devices:
- Samsung Galaxy S7 (European version, with ARM Mali GPU). Make sure you have the latest firmware, with build date August 2016 or later. Previous firmwares have older drivers that are known not to work.
- Nvidia Shield Tablet (both versions), Shield Console.
- Google Nexus 6P, 5X (although you might see more issues on these handsets compared to the others).
The following devices are known not to work with the currently available firmware:
- Samsung Galaxy S7 (US version, with Qualcomm GPU). An upcoming firmware with an updated driver should fix this.
On Linux, only the Nvidia GPUs have been tested. You’ll need to have libvulkan1 installed (either from your distro or via the LunarG Vulkan SDK) and recent enough drivers (367.x or newer). However, we’ve seen random hangs when transitioning from the splash screen into the game itself. So when testing this experimental release, you might consider disabling the Unity splash screen, if you have that option.
As this is an experimental developer preview, there are some known issues we’re working on. We also welcome your feedback! Please let us know of any bugs or issues you find:
- Graphics jobs on Vulkan are especially experimental at this stage. If you see crashes, try disabling Graphics Jobs to see if that’s the one causing it.
- GrabPass is not supported with Graphics Jobs.
- On Nvidia GPUs, when rendering with multiple cameras with MSAA enabled, display corruption may occur.
- On Android the Graphics Jobs are currently configured to run in 2 concurrent threads only. Because of this, you’ll usually get better performance by using the Multithreaded renderer instead (this is the existing client/worker threaded renderer).
- Compute shaders haven’t been thoroughly tested yet, YMMV.