Nicholas Cheng Cornell University

Model-View-Controller Game Engine (2013) - Java

I enjoy programming in Java, but doing graphics related things are very tedious, especially if you want to involve images or even image sequences. That is the inspiration for this project. I created the engine using only the default graphics packages in Java. It is able to parse through folders containing many images and store them in memory as animation sequences. These clips can be manipulated and transformed quickly and easily. It maintains a display list to order the game objects depth and then draws them to screen.

See the repository here: https://github.com/nac67/GameEngine

See description...

Chupa Chomp Game (2014) - Java

This was the first major project I did using my Java game engine. It started out as a practice project but has turned into a full fledged game. It contains A* pathfinding for intelligent enemies, isometric tiles with z-sorting, a level editor program, and hundreds of images to create animations. It stars a farmer whose farm has been taken over by chupacabras and he is trying to escape.

See more...

Pathfinding (2014) - Java

Many of the games I create are tile based, so I decided I needed a tidy class to deal with all my pathfinding needs. In technical jargon, this is an amped up version of A* (Dijkstra's algorithm with Euclidian distance as the heuristic). Where my algorithm differs is through its handling of diagonal movement. My pathfinder can reconstruct the final path in ways that can around corners for more realistic game movement.

See more...

Floating Arm Trebuchet (2011)

A trebuchet is a device that uses a counterweight to launch a projectile long distances. A floating arm trebuchet is one where the main throwing arm is not actually attached to the device. If it were attached, it would need a fixed pivot point which would use the valuable potential energy in wasteful ways. Our trebuchet successfully launched an orange 150 feet.

See more...

Light Art (2011-Current)

Most pictures are taken in a fraction of a second and the light pours in for only an instant, freezing the motion. But with long exposure photography, you can leave the shutter open for minutes at a time while "drawing" light with flashlights.

See my gallery here! (in a new tab)

Trespasser Puzzle (2012) - Flash

My favorite game series as a kid was Ratchet and Clank, and I was always fond of their "hacking" puzzles. My favorite one, however, was a puzzle game in the first Ratchet and Clank. I was sad that such a fun mini-game only had such a limited number of puzzles to solve, so I recreated the game along with a random level generator to keep myself entertained.

See more...

Saucer Destruction 3 (2010) - Flash

This was my first venture into the world of object-oriented programming. In this game you pilot an alien saucer with a tractor beam that can throw vehicles and people around the town. The object oriented aspect came into play when I needed all the vehicles to act in similar yet distinct ways and similarly with the people. All of the vehicles extended a main vehicle class, with special abilities such as police cars dropping off police men and tanks firing shots, yet they all behaved similarly in that they can drive, and when you pick them up with the tractor beam and throw them, they should obey the laws of physics.

See more...

Blender Projects (2010-2013)

I began learning blender in 2010, and have learned a lot about modeling techniques, UV unwrapping, character rigging, and rendering.

Visit my gallery (in a new tab)