Newbie - Vulkan Windows Windowing Library?

Hi Folks:

Any suggestions for a Vulkan tutorial? I’m solid with C++.

I used Joey de Vries excellent tutorial to add a little OpenGL code to an existing Windows app a few years ago.

I needed to transpose the windowing library code to Window’s OpenGL library, I believe it’s called WGL. This worked fine.

Now it’s the same deal, add Vulkan code to an existing Windows App.

Is WGL the Windows library I’ll be using for Vulkan? Searches for “Vulkan WGL” aren’t turning up much. Can somebody point me to a site that will help smooth the process of using a Windows window manager on a Vulkan project?

Thanks
Larry

Hi @larryl,try to Use SDL library.

WGL isn’t the OpenGL library, but rather a Window System Integration (WSI) library for OpenGL on Windows. Analogous to GLX on Linux, and EGL on multiple platforms including mobile and desktop (Linux and Windows). These are interface layers that allows GL to talk to the native window system.

No, Vulkan has a different WSI layer than OpenGL. For a tutorial on using it, see this section in the Vulkan tutorial:

It tells you what Vulkan APIs are being used here and how. But if you want to verify that, you can easily pull the GLFW source code from here and inspect it yourself:

Thanks Andrey:

I appreciate your suggestion, but I’ll probably follow Dark Photon’s advice.

Have you found a Vulkan tutorial that you think is particularly good?

  Larry

Thanks Dark Photon:

You responded to some of my questions five or six years ago when I was dabbling in OpenGL, and Vulkan was pretty new.

Is there a Vulkan tutorial people recommend?

  Larry

These pages have pointers to many of them. In the 1st link, skip to the Tutorials section.

Also don’t forget to check out the books:

However, I’ll defer to anyone else here as to preferences for specific tutorials, as I’m not actively doing Vulkan development right now.

I concur. I really appreciate that SDL offers a ready setup for Android (tried out), and supposedly IOS. Coupled with CMake that makes for a reasonably simple cross platform setup which is neat to have.