Skip to main content

CST 325 - Module 1

It's the beginning of a new class! In this CST 325, I am going to be learning all about graphics programming and understand the concepts behind generating computer graphics.

This first week involved a lot of trigonometry, geometry, and vector math review. The majority of graphics programming relies on math from these fields, especially vectors, so it's important to understand it even before diving into the basics. I hadn't done trigonometry or vector math in a while so I had some difficulty doing the review assignments at first, but watching 3Blue1Brown's videos on vector math helped me out a lot. 

The second part of this module involved writing a simple 3D vector (Vector3) and sphere API, and performing ray-sphere intersection calculations. I was able to understand and implement Vector3 quickly, but the ray-sphere intersection program/API took me a little longer than I expected because I wasn't familiar yet with some of the built in functions and how to implement the math operations I wanted in Javascript. However, at the end I was able to get both my Vector3 and Sphere code to pass all the unit tests, and I understand how ray-sphere intersections work well enough, I think, to work on the next module, which is writing a basic ray tracer. 

Comments

Popular posts from this blog

CST 300 - Week 4

Educational Goals My current educational goals are to finish my bachelor's degree in computer science while also gaining a deep understanding of the fundamentals along the way. I have always believed that a solid understanding of the fundamentals goes a long way in any skill since you always refer back to them. When I have gotten stuck on a problem or some skill in the past, I have always taken a step back, broken down things into smaller pieces and remembered my fundamentals, and doing so has helped me through a lot of academic and professional work so far. Although I already know basic programming and data structures, I want to learn more about them and discover new ways of thinking in order to solve complex problems.  Career Goals I started a career as a full-time software test analyst about two months ago. Even though my job doesn't involve a lot of programming, getting a degree in computer science would be really helpful in all aspects of my career, such as identif

The Final Journal

It's the end of a long, four year journey, and what a journey it has been. I never thought I could pull off finishing my second bachelor's degree four years ago when I first went to that introduction to programming class at my community college. I would like to thank all the friends I've made along the way and the people who have helped me through the last two years. Although it was difficult at times taking class while working 40+ hours a week, I'm proud of myself for making it through. I don't think I'll be a student enrolled in classes anytime soon, but I'll always be a lifelong student. See you all around.

CST 300 - Week 3

This week, we learned about ethics, ethical frameworks, and held a discussion about an infamous contemporary ethical scenario. After reading through this week's material I feel as if I have a much better understanding of ethics in society, and the motives behind people's decisions whether good or bad.  I'll admit I didn't pay much as much in depth discussion to Edward Snowden when he originally leaked all that information back in 2013, but after this week's discussion it really got me thinking about proper ethical behaviors in society and made me question much privacy I actually have as a US citizen.  Note: NSA, if you're reading this, say hi to my friend Chris for me. He's around the DC area somewhere and I'm sure you've run into him a couple of times. I swear he's a nice guy and doesn't bite.  Time Management and Studying I am getting much better at concentrating while working on papers and studying material. Unfortunately, I shoul