This is journal noting down the topics I covered through my deep dive into Direct 3D 11.
- Rendering Triangles through rasterization: Knowledge about the rendering pipeline process where triangles are converted into pixels on the screen by the graphics processing unit (GPU) through a technique called rasterization. 
- Model loading with normals: How to load 3D models into the graphics memory of the GPU and incorporate normal vectors for lighting calculations. 
- Texture Mapping: I gained experience with texture mapping, where images are applied to 3D models to enhance their realism. 
- Blinn-Phong shading model: I gained knowledge about the Blinn-Phong shading model, which is a widely used lighting model in computer graphics. It takes into account surface properties such as ambient, diffuse, and specular lighting. 
- Direct3D 11 Pipeline for rasterization: I learned about the Direct3D 11 Pipeline for rasterization, which includes three stages: Vertex Shader, Geometry Shader, and Pixel Shader. I gained an understanding of the role of each stage and how to write shader code. 
- Camera motion control: I learned how to control the camera in a 3D scene, allowing the user to move and interact with the scene. 
What could be improved:
- Normal Mapping for textures: I could improve my skills by incorporating normal mapping, which adds fine details to textures, making surfaces appear more realistic. 
- Instancing of models: I could improve my skills by learning how to efficiently render multiple instances of the same model, which is useful for creating large scenes with repeated objects. 
- Better Scene representation: I could improve my skills by working on creating better scene representation, which includes things like lighting and shadowing. 
- Extensive control over model objects and scene lights: I could improve my skills by learning how to give more extensive control to the user over model objects and scene lights, providing a more interactive experience. 
