22
SEP
2019
Animation Blending is Hard

Pro tip: Do not mess up your animation blending algorithm, else your game will suddenly feature body horror.

25
AUG
2019
Adventures in 3D Lighting

Unfortunately, I have not had much time for writing so I may be backdating a few entries. Aside from being busy with work, I have been working on my game engine. Since the last time I mentioned my engine, I added animations, lighting, shadow casting, physics, and scripting.

When will I have a game out? Probably not for a long time. This project is primarily educational. I could be working on a game now, but my current interest is in developing the engine itself.

23
AUG
2017
Adventures in 2D Lighting

Recently, I have been experimenting with 2D rendering for a side project. I built the renderer based off the 3D renderer I wrote a bit back using OpenGL and C++. Most of the code was reusable, so it was not a hassle to set up basic functionality. The difficult part was figuring out how to light the scene.

For handling lighting, I took a lot of inspiration from an article on 2D visibility over at Red Blob Games. In function, my algorithm is fairly similar. I apply it to mask light sources to areas they affect. In the future, I intend on repurposing this work to affect sound propagation in the scene and in an AI system.

02
JUN
2017
Level Up!

It's been a long journey, but I have just finished graduate school. I now have a Master of Science degree in Computer Science. At this time, I am unsure what I want to achieve next. I do plan on taking some time off finishing studying some materials I have been working on.

02
SEP
2015
It's all Ogre now

Summer's over and it's time for school again. This semester will be my first semester of graduate school and I'll be working as graduate assistant this year. Not much more to say there.

Over the summer, I have been allocating a large portion of my time into learning about game engine design and graphics programming. To do this, I designed a basic game engine using OpenGL and C++. The engine uses deferred shading, but I only got around to implementing basic point lights. While this project is entirely for educational purposes, I believe that I now have a fair grasp of the basic functionality behind rendering for games.

From there, I decided to drop my own rendering engine and drop in an existing one. My intent is to study the fundamental aspects of as much as I can before I devote time into deeper knowledge of any single part. Since I have worked with Ogre3D in the past, I decided to revisit my previous work with it. It sure was an eye-opener seeing my old code and how I have improved since then. Introspection aside, swapping rendering engines was fairly simple and I managed to retain most of the other work I put into the original project.

04
MAY
2015
Graduation

Graduation is just around the corner (May 16th) and this event marks a new chapter of my life. I have had a great time studying at Bradley University so I have decided to also pursue a Master's degree here. During the next couple years, I will also be working for Caterpillar and pursuing my own interests in my free time. With that, I think it is about time for a refresh of this website.

This website has been hanging onto a lot of unnecessary baggage, content that was not worth keeping. I have removed most of the content from years ago. If I have time, I am considering looking back at the work I have done in the past and revisiting those projects with a fresh pair of eyes. For now, however, it is time for a clean slate!