Skip to content

A project to study CMake, Qt and Vulkan. This project can be compiled, debugged and run on Windows and Linux platforms.

License

Notifications You must be signed in to change notification settings

mamannon/Vulkan_Simulator

Repository files navigation

Vulkan Simulator

Multi platform application development, modern C++ and the new graphics API Vulkan (new in the sense that OpenGL is the old API...) create a mixture of challenges which are to be tackled in this project.

Preface

Chosen development tool Microsoft Visual Studio offers us a possibility to develop an application simultaneously for several different platforms using the same code base. This time chosen platforms are Windows and Linux, and I use CMake and Qt to enable multi platform development. Vulkan graphics API is used for 3D visualizing of glTF file contents.

Current version does basic rendering correctly and it is possible to watch simple glTF files, but both rendering, file reading and user interface has serious limitations, for example:

  • Window resize is not implemented.
  • Materials and textures are not implemented.
  • Only GLTF files are readable, not GLB files.
  • The Linux version crashes in launch. Previously Vulkan_Simulator run in Linux, but now there are issues in environment settings.

Requirements

To fully run and develop this project, you need Microsoft Visual Studio 2022 or newer installed on a Windows computer. Then, if you like to develop for Linux, you need another computer with a Linux operating system and an ethernet connection between the two computers. Graphics drivers of both computers must be Vulkan 1.0 capable.

On Windows machine you need Vulkan SDK and Qt 6.8.1 library installed on your computer, among other libraries. The installation should go like:

Also on Linux machine you need Vulkan headers and Qt 6.8.1 library installed, among other libraries:

  • Install Qt library using Qt installation software https://www.qt.io/download-qt-installer-oss . After downloading yu need to give a permit to install in terminal with a command 'chmod +x qt-online-installer-linux-x64-4.8.1.run'. After that, double-click the qt-online-installer-linux-x64-4.8.1.run file in downloads folder. Select Qt version 6.8.2.

  • Install other needed libraries, nlohmann, stb and glm: sudo apt install nlohmann-json-dev, sudo apt install libstdc++6, sudo apt install libglm-dev.

  • Vulkan may be already in your Linux machine or not. There are different installation procedures to install Vulkan into Linux, but you can try this: apt install libvulkan1 mesa-vulkan-drivers vulkan-utils You need Vulkan header files in your Linux machine, of which graphics card need to support Vulkan.

  • To install CMake on your Linux machine, go to https://cmake.org/download/ .

  • Install GCC compiler, GDB debug manager, openssh-server etc: sudo apt-get install openssh-server g++ gdb make ninja-build rsync zip.

CMake is the script language to orchestrate project build and you need to set correct absolute file paths to get things working.

License

This project is licensed under the MIT License.

About

A project to study CMake, Qt and Vulkan. This project can be compiled, debugged and run on Windows and Linux platforms.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages