Couple quick questions about the vulkan implementation

Started by Grayscale, July 25, 2017, 17:54:17

Previous topic - Next topic

Grayscale

Firstly, I'm looking to get started dabbling in vulkan and java is my language of choice but I first have to ask, how much of the vulkan api has been implemented into LWJGL as of late? Is there any functionality missing and if so would I be better off going the c++ and LunarG route?

Secondly, is there any large performance hit when interfacing with the vulkan libraries over jni?

spasi

Quote from: Grayscale on July 25, 2017, 17:54:17Firstly, I'm looking to get started dabbling in vulkan and java is my language of choice but I first have to ask, how much of the vulkan api has been implemented into LWJGL as of late? Is there any functionality missing and if so would I be beeter off giong the c++ and LunarG route?

The Vulkan bindings are generated using a dedicated project that parses the Vulkan registry. That means that the entire API (core + extensions) and all documentation is always up-to-date (as of this post: 1.0.56 with this commit).

Quote from: Grayscale on July 25, 2017, 17:54:17Secondly, is there any large performance hit when interfacing with the vulkan libraries over jni?

No, LWJGL is optimized for Vulkan; lowest possible JNI overhead and efficient struct access. Stack allocation of structs is also ideal for high performance rendering.

Grayscale

Quote from: spasi on July 25, 2017, 18:28:24
Quote from: Grayscale on July 25, 2017, 17:54:17Firstly, I'm looking to get started dabbling in vulkan and java is my language of choice but I first have to ask, how much of the vulkan api has been implemented into LWJGL as of late? Is there any functionality missing and if so would I be beeter off giong the c++ and LunarG route?

The Vulkan bindings are generated using a dedicated project that parses the Vulkan registry. That means that the entire API (core + extensions) and all documentation is always up-to-date (as of this post: 1.0.56 with this commit).

Quote from: Grayscale on July 25, 2017, 17:54:17Secondly, is there any large performance hit when interfacing with the vulkan libraries over jni?

No, LWJGL is optimized for Vulkan; lowest possible JNI overhead and efficient struct access. Stack allocation of structs is also ideal for high performance rendering.
thank you, quick and precise. I look forward to jumping right into vulkan now  :)