Summary

In this assignment, the .s72 loader is upgraded to handle material parameters, texture maps, and lighting environments, with an emphasis on efficiently uploading textures to the GPU. The drawing code is then updated to support multiple shaders and binding sets, ensuring smooth integration of the new features. Additionally, shader code for tangent-space normal maps is implemented to bring realistic surface details to life.

I created an animation with 4 snowman models, each with different materials—environment, mirror, Lambertian, and PBR - to celebrate Halloween.