Introduction
Getting Started
- What D3D11 and GPU APIs actually do
- Cram a picture in here of the DX11 graphics pipeline to show where we are, and what we need
- GLFW window (HelloWindow) with link to HelloWin32Window (but no going through what it all means)
- D3D11 initialization, Raw Pointers vs ComPtr (HelloComApplication) and (HelloD3D11)
- Swapchain creation, clearing and resizing the screen
- Hello Triangle
- Shaders
- Show how they can be compiled with VS?
- Explain how to compile from code (D3D11CompileFromFile...)
- InputLayout
- VertexBuffer
- Explain vertex/indexbuffers, primitivetopology, shaders (overview) and RasterizerStates\
Debug and how to help yourself
- ClearState and explain why this is useful
- Debug Layer/Debug Device
- Naming things
- RenderDoc
- NvOptimusEnablement/AmdWhateverPerformance for laptop users
Model Loading
- Loading Textures (HelloFroge) (that means introducing an image library)
- Loading Meshes
- Loading Materials/Textures
- DepthStencilTexture+DSV
- DepthStencilState
- IndexBuffer
- Math
- Coordinate Systems
- Shader support for -> (Would be cool if we we could apply terminology to shaders too and have easy ways of conversion between those... @NeuRE is using something like that in their engine... clipToWorld, clipToView, worldToView etc imoh that makes things easier to grasp
- Constant Buffers
- A camera to admire froge
Does it make sense to come up with some sort of "Scene" VkGuide also mentions that and it makes sense imho (this could lead to advanced articles to either how to use ecs like entt, or whatever)