A wacky mayhem filled ride down a winding mineshaft littered with hazards. As a small group of five we have been working to develop a simple endless runner rendered with DirectX. The project started by adding DirectX rendering and LUA scripting to a small OpenGL engine called Vixen. My focus has been primarily on Shaders.To give the mineshaft some life I altered our vertex Shader to offset the vertices based on a couple factors. With some calculus help from another group member we arrived at a fairly convincing effect. By pausing model movement but continuing the offset effect we get an interesting effect we used for our main menu. I also worked on adding in a simple fade to black to hide the spawning of track and walls. View on GitHub
Working with a partner we utilized Canvas to create a traditional tower defense game with a little extra attitude.
During development we ran into very few issues, however we decided to cut out a significant amount of features including a second game mode you would switch between to gain new units. The decision was made to polish what we had rather than stretch ourselves too far. This was a great learning experience for approximately sizing up a project and determining realistically what can be accomplished in a time frame.
Try it out here. Don’t forget sound!
Fight your way past zombies to collect enough money to pay the helicopter pilot on the roof. Worked with a small group to design and build the game. My responsibilities included rendering and a level editor
There were many interesting challenges that I ran into during development. To render our isomorphic view we sorted each entity based on its Y value. I initially implemented a quick-sort to efficiently handle sorting, however I quickly switched to a bubble-sort to prevent z-fighting (or Y fighting in this case) that resulted from the unstable quick-sort.
To assist in the building of levels I created a separate application. My level editor was a couple of XNA view ports to represent the level and any imported assets. Collision was outlined by drawing rectangles on a separate layer. Levels were exported and imported from a custom binary file format.