Well, not so long ago, Khronos Group released the new (and promising imho) graphics API called Vulkan. And as you know, I’ve always been Khronos & OpenGL supporter against the invasion of the DX since my first attempt to write 3d. Don’t get me wrong; DX is not bad at all, it is SUPER powerful, but I’m just not feeling good with it, not to mention how much I love the core idea of cross-platform-ability (which Y i love UE4 & U3D), and with that in mind, I then decided to give this new volcano baby a try!
After tons of tries, failures, readings, ..I’ve to say, performance wise so far didn’t feel any difference, as all that time I spent getting familiar with the thing, back on the track again in writing 3d and most importantly getting to understand about this new API & it’s methodology and try to display something..ANY-THING.
Eventually I was able to put that quad on the screen with a decent texture loaded & a light source in there. While in another era I would say it is an easy job to do, but that only would be from the perspective of the OGL guy within. While this could be done in OGL in less than 200 lines of code (or even less than 30 lines without a texture), I was able to do this in Vulkan with over 1k lines.
To be fair, all that long code for such an example, is gonna be super useful in the future in terms of being reused to handle many things.
Of course no one like writing more, but at Vulkan’s case, writing more came from only one fact, that you have more and more control over every single thing you want or even imagine to do, which was not always the case in OGL for me.
There are many question in my head, and more possibilities I want to try. So I would say the end of this experimental project can be considered as the start of a bigger project based on being fascinated and inspired by this new fresh API.
I’m kind of 50/50 considering a full & final divorce from the old OGL girl, and go with the new one Vulkan! I see a lot of potential in there! And it seems fun, and wherever fun is, I’ll always go after it!