Skip to main content

Posts

Showing posts from December, 2019

CST 325 - Module 7, Final Week

This week, our class learned about implementing shadows in WebGL, how shadow maps and shadow volumes work, and the underlying math behind shadow maps. I found understanding how object space is transformed to light space and so forth somewhat difficult compared to previous modules where we worked with other parts of the rasterization pipeline, and it's something I need to spend more time on in the future. However, I was able to get my Utah teapot correctly lit and in shadow for this week's assignment, and I am satisfied with the final results. Overall, I learned a lot in this class, especially about linear algebra and how to think of it as transformations in space - I think that was the most important lesson I learned over the past eight weeks. Computer graphics are still fascinating to me, and I'm glad I understand the principles behind them now, as my whole computing life has involved interacting with graphics in some form yet I had never understood the mechanics of

CST 325 - Module 6

This week, our class learned about the principles of shading, including the physics behind light, different shading models, and how light interacts with different types of materials to produce colors human eyes see. I found this week's assignment more enjoyable and pleasant to create compared to last week, where I felt as if I spent a significant amount of time fighting JavaScript instead of implementing a solution. I enjoyed learning about the math behind Phong shading and how it is still used today in computer graphics due to its efficiency and ease of implementation relative to other shading techniques, even though it does not produce the most accurate results. I am looking forward to learning about shadows next week, as one of personal programming heroes, John Carmack, created a neat algorithm for shadow rendering in Doom 3, and since then it has become an industry standard technique. I didn't understand much of the technical detail behind it at first, but I'm sur