My Educational Background


 

In the Beginning there was C++

When I first started in my field I studied computer programming with C++. I learned all foundational components of programming with creating algorithms, conditional statements, arrays, selection control structures, data abstraction, recursion, lists, stacks, cues, binary trees, and artificial intelligence. I began with basic machine programming, and then eventually moved into game programming with implementing AI.

The image shown here is a maze program that I wrote in my first Intro to Computer Science course. It allows two players to chase each other through a maze and place invisible trap doors which will lower the players health counter if they hit them. Although the game is displayed using Ascii values, all of the functionality is there.

Web Development

After my intro courses in C++, things began to ramp up very fast with web development. My experience in the web was divided between the art department with design and animation, and the computer science department with the functional and back-end side of interactive applications. This environment had a very fast turn around on a weekly basis that required strict standards for clean presentation, code readability, reusability, browser compatibility and pushing the boundaries of syntactically elegant approaches. I had to write multi-tier web applications using languages such as JavaScript, AJAX, Ruby, Perl, PHP, and MySQL.

Computer Graphics

After a couple more years of programming courses, I eventually took another programming course in Computer Graphics. The course consisted of C and C++ programming with the OpenGL and GLSL API's. The purpose is to learn the very core of computer graphics and how they are created. The image shown here is a light casting program I wrote in OpenGL.

This assignment called for dynamically loading ambient, specular, and volumetric light sources at GL MouseClick events, and then cast and fill the environment with light depending on where, and how many times you clicked. The user could add as many light sources as they wanted from any location within the program. While this course consisted of primarily understanding and creating interactive computer graphics, students were essentially taught how to write small game engines.


Animation

Once I completed my computer graphics course, I moved on to my first animation course. This really helped me to build on my knowledge and experience in the field. Ever since then, I've been continually building on my animation abilities. There are so many various elements to creating different forms of animation and through my multiple animation projects so far, I've come to thoroughly enjoy the technical challenge that animation has brought me. As I move forward, I'll continue to build on my abilities and release more animation projects demonstrating my passion for the field. This image was from a group project I was in during my undergrad program at Taylor University.


Game Development

Near the end of my undergrad degree, it was time to focus on preparing for my senior project. The project called for a technology that I've never used before, so I chose to create a first person platform game using the Unity 3D game engine. Since I had a vast array of programming languages that I had worked with up until this point, I felt pretty comfortable with using the Unity engine. I was able to complete most of the project using Javascript since that is one of the three languages that Unity uses.

I've taken a lot of courses and spent years studying computer graphics and creating professional content. Looking back, I know without my foundation in computer science, there would be a lot more with animation and computer graphics in general that I would not understand. It's very important to have the proper technical foundation that challenges and preps the mind for today's technical media.