Support us on Patreon to keep GamingOnLinux alive. This ensures all of our main content remains free for everyone. Just good, fresh content! Alternatively, you can donate through PayPal. You can also buy games using our partner links for GOG and Humble Store.
We do often include affiliate links to earn us some pennies. See more here.

Update: Now on GitLab.

It's been a few years I had been meaning to learn modern OpenGL, so when Vulkan came out this February, I decided I'd just go and learn that instead. Boy, not knowing modern OpenGL did not help! Powering through despite much personal duties, I've written these tutorials along the way that I'd like to share with you:

https://github.com/ShabbyX/vktut

In these tutorials, I first explore the basics of Vulkan, such as enumerating your GPU cards, find out the features your drivers have, and setting up Vulkan to use the cards. Due to the shear amount of work and knowledge required to render to screen, I experiment with compute shaders first. This keeps the complexity low, while allowing us to do some parallel work and evaluate Vulkan w.r.t multi-threading. Afterwards, I talk about extensions and layers in Vulkan, which are very nice. The next tutorials set up a window for rendering and show how to allocate resources. After eight painstaking tutorials, a triangle is drawn!

What I learned about Vulkan in this time is that it's just pure awesome. You have so much power over every aspect of rendering, your skills are the only limitation! Vulkan may seem complex at first, and it sure is verbose, but at its heart it's very simple. It's all about declaring what you are going to do, and then doing it. The Vulkan specification is also a very nicely written document that is quite easy to read.

If you are interested in learning about Vulkan with some real code you can play with, feel free to rummage through my tutorials. Naturally, they are written under Linux and target Linux.

Article taken from GamingOnLinux.com.
Tags: Editorial, Vulkan
0 Likes
The comments on this article are closed.
14 comments
Page: «2/2
  Go to:

t3g Jul 14, 2016
Has anyone tried the Python bindings from https://pypi.python.org/pypi/pyVulkan?

I'm a big fan of Python, but if I am doing something serious with Vulkan, maybe C is still the way to go with it being low level.
neowiz73 Jul 14, 2016
thanks for the tutorials, awesome work, these will nice to check out :)
kalin Jul 18, 2016
https://vulkan-tutorial.com/
you can check this too
ShabbyX Oct 9, 2016
If anyone is still following, I've added a couple more tutorials since I posted this.

Most recently, I added one where I fake a presentation engine (as if done in the driver) that renders to terminal with ncurses. With very minimal changes to the application, I get a Vulkan-rendered triangle on the terminal!
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.