Matrix4.js
3/07/2023
This project served as a good introduction to matrices but I am looking forward to being able to do more complex projects with them. I had technically learned about using matrices for transformations last year, but I had pretty much checked out of the class by the time we got there so I didn't retain much of anything about it. This has been a good refresher on how they actually work, and I think it's helped me gain a little more understanding of them. Right now I'm mostly at the stage where I'm jst copying things down and don't have a super strong idea of how they're actually working, but I'm going to spend some more time reading about matrices over the week and hopefully it'll click.
Speaking of reading about matrices, I found this tutorial on perspective and orthographic matrices particularly useful. It uses a different approach from what we learned in class but I was able to adapt it for our matrix4 program. I was definitely feeling a lot more lost about the perspective and orthographic matrices so this tutorial was a huge help in that regard. Otherwise, as I mentioned I'm planning on spending more time over the week reading some more resources on matrices (like the textbook) so that I have a more solid foundation for when we move on to geometry processing.
As I mentioned above, a lot of this programming assignment was just copying down the matrices we had talked about in class (in terms of rotation, scaling and transformation). Formatting the code so that it was easy to understand where you were changing values was probably honestly the most challenging thing, but doing it right made the whole experience much easier to understand. I had several issues with the TRS and moonMatrix problems, but all of those were essentially solved by digging into the test file and adding some breakpoints where I subsequently found a silly mistake. The hardest part for me to wrap my head around was the perspective matrix, which is why I went out and found a separate resource.
Unfortunately, I wasn't able to work with my partner as much as we usually do this week. Some family stuff came up and I ended up having to go back home midweek, which threw off my schedule. We did help each other out a little bit with some of the rotation matrices and earlier parts of the project but in general out communication was a bit lacking for this assignment. Luckily the whole thing was pretty easy and we both finished it without too much issue so hopefully next week is better.