Skip to main content

Final Project

📄️ AniGraph

OpenGL (and rasterization-based graphics in general) is weird. It's a huge complicated messy system designed to do very specific things incredibly fast. It is not designed to make doing those things easy---that is why engines like Unity and Unreal are incredibly successful: they hide away a lot of that messiness during development. This assignment will be a chance to peek behind that curtain. AniGraph is a framework I created to facilitate that peek in the setting of a large intro course like CS4620. It will make your life easier, but not as easy as a complete game engine. You are still going to have to face plenty of messiness. The hope is that you will come out of that experience with a better understanding of how things work, which also tends to make people better users of high-level tools and engines in the end.

📄️ Features

We will approximately measure features on a point system, with the number of points needed for full completion depending on the number of members in your group. Our expectation is that larger groups should do more, but integrating a larger number of features can also be more work. To this end, the number of features we will look for to award full completion credit roughly scales with the number of members in a group, but larger groups may receive credit for integrating more features if this is done well. We are also reasonably open-minded here---implementing one very complex feature super well could be enough for a team of 4 if it is done very well and the work can reasonably be divided among 4 people (e.g., if you implemented a really impressive fluit simulation), but that would be the rare exception, not the rule. We will ask you to report who did what, and if contributions are especially uneven we may assign different grades to different group members.