Today, we have Matthew, Preston and David, who have worked on various projects . . .
Matthew
During this discovery term, I decided to make a 3D Game Engine. A game engine is a commonly used tool to make game design easier by focusing more on game design than manipulation of the computer, and its components. It sits behind the scenes to calculate how it needs to manipulate each pixel on the display to accurately represent the 3D space the programmer has designed. For example, it would be the job of the game engine to take a list of coordinates and information, and turn it into an object which the player can see on their screen.
From my experience with making a game engine, the backbone is math. Specifically for my engine, linear algebra. Most of the difficulties I had were from conceptualizing the three dimensional space and how each vertex of a shape needed to be calcualted. The consistency of this code is also extremely important, since a modern display display shows almost 2.1 million pixels at a time. This “image” is then updated 60 times every second. This means that every second, the game engine has to determine the color of 124 million pixels! If anything in the engine doesn’t work 100% of the time, your game would have 124 million chances for it to break the game.
David
One of the things I’ve worked on this discovery term is my “NBA Simulator”. I learned Java using online tutorials and used what I learned to create a console-based game in eclipse that will predict the winner, score, and point-scorers of any given NBA match-up. I learned how incredibly difficult it can be to code. Countless errors must be researched and you must constantly look for new solutions to achieve the desired goal. Even something as simple as this required over 590 lines of code to function.
Preston
I am currently finished with my soccer penalty kick simulator. It includes celebrations, an intro, and countless videos which I taught myself. I taught myself how to add videos, manage videos, and learned lots of coding with help from Ben and Josh and the internet and the Documentations from Unity. Some challenges were seen, but were all avoided in the end besides one where my goalkeeper gets stuck on one post of the goal and glitches out. The rest of the project is a success as I thought this project would be too hard for me.