Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
LearnOpenGL
Code repository of all OpenGL chapters from the book and its accompanying website https://learnopengl.com
-
DirectX-Graphics-Samples
This repo contains the DirectX Graphics samples that demonstrate how to build graphics intensive applications on Windows.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
/u/SaschaWillems is amazing. He shows up a lot pretty much everywhere and contributed heavily to the Vulkan Samples. The samples are amazing for getting a good overview of certain features. Just pick a sample (like Dynamic Rendering) and look for comments. In my experience, the important bits are commented. What is learnopengl.com to OpenGL is probably Sascha Willems to Vulkan. Vulkan tutorials are not as praised as learnopengl.com was but I've yet to see something bad about the stuff Sascha Willems has on his GitHub and blog.
https://vkguide.dev/ This is my favorite.
https://learnopengl.com/ get your feet wet there because OpenGL is still a very simple API to learn the fundamentals of computer graphics. It also has a lot of room to grow because learnopengl.com will teach you a very "bindful" way of doing things but you can do the whole AZDO thing in OpenGL 4.6 (not core. Bindless textures will break RenderDoc for example so I wouldn't start out with that just because the easiest to use debugging tool doesn't support it).
In my post I was using the generate mipmaps example to illustrate what I'm saying. In order to generate mipmaps in realtime in OpenGL you would simply make a call to generatemipmaps() or whatever it is called. In Vulkan it is more challenging because you have to do explicit resource management, but it isn't that bad still. In D3D12 you have to write your own compute shader https://github.com/Microsoft/DirectX-Graphics-Samples/blob/master/MiniEngine/Core/Shaders/GenerateMipsCS.hlsli