3rd Party Resources of interest
C++ Core Guidelines etc.
Best Practices
- Best Practices Criteria for Free/Libre and Open Source Software (FLOSS)
- include-what-you-use tool
- clang address sanitizer
- clang thread sanitizer
- clang memory sanitizer
Package managers
Documentation tools
Runtime analysis tools
Video presentations
- GDC 2016: High-performance, Low-Overhead Rendering with OpenGL and Vulkan
- C++Now 2017: Daniel Pfeifer “Effective CMake”https://www.youtube.com/watch?v=bsXLMQ6WgIk)
Tutorials
Vulkan Presentations
- Keeping-your-GPU-fed
- Samsung Vulkan Usage Recommendations
- AMD Vulkan Device Memory
- NVIDIA Vulkan Memory management
- Vulkan Spec
- Vulkan Shader Resource Binding
- Lessons Learned While Building a Vulkan Material System
Vulkan based projects
Maths
- Rotors for angles
- GLM - GLSL style maths classes/functions
- GMTL
- GLSL data types
Image and 3D model loaders
- Assimp 3D models loading
- GLI Loading/manipulating images/textures
- STB stb_image.h etc.
- DevIL DevIL image library, repo
- FreeImage FreeImage image library (GPLv2/GPLv3/FreeImage License), repo
Introspection
- Cereal
- cson - C++ Simple Object Notation
- A Flexible Reflection System in C++: Part 1
- A Flexible Reflection System in C++: Part 2
- Small example of use of std::make_type, std::ref etc.
3rd party scene graphs
- Paul Martz’s JAG
- Jeremy Moles’ Heirograph scene graph (need reference)
Suggestions in osg-users ML/forum post from Paweł Księżopolski
Vulkan specification is the most comprehensive source of knowledge about the API - it’s long but it is a must for any developer taking it seriously :
As for the books I recommend “Vulkan Programming Guide” written by Graham Sellers. Sometime ago it was even available for free in certain countries on Google Play bookstore :
Active forums discussing Vulkan include Khronos forums :
and Vulkan subreddit :
Sascha Willems wrote a good set of Vulkan demos, that show how to implement certain features :
Vulkan Compute examples:
There’s also a curated list of useful links to everything associated with Vulkan :