Projects
Charged Particle Video @ YouTube
|
I revisited my Charged Particles Simulation (original project listed below) with the intention of applying some things I have learned since its creation. The biggest change is that it now uses an actual point-sprite-based particle system to represent each charged particle. So instead of a cube made of 24 vertices that needs to be lit, there is now a particle system of 20 point sprites that use additive blending to create a cool animated electric charge look. Each point sprite is rendered using HLSL. With this new, more efficient system, I was able to extend the max number of charged particles from 1000 to 2000 (2000 charged particles means 2000 * 20 = 40,000 point sprites), suggesting that the bottleneck was indeed on the graphics side as opposed to the physics side.
|
Adventures of Kling
AoK_Gameplay Video @ YouTube
AoK_Gameplay Video .avi
|
AoK is a puzzle/adventure game in which the player controls an alien creature named Kling. Kling is so named because of his unique ability to cling onto floating spheres referred to as “nodes” using his tongue. While attached, the player may temporarily use a special ability. Green nodes allow you to rotate the level in 90 degree increments, essentially changing the direction of gravity. Red nodes allow you to drag and drop certain blocks anywhere on the screen which Kling can then use to reach his destination. Purple nodes are “Kling-Shots” serving to sling Kling into the air, over gaps of spikes, or onto an otherwise unreachable ledge. With these powers to aid him the player must navigate through a series of labyrinthine worlds, outsmarting enemies, collecting keys, and using his mind to overcome this intensely challenging game.
|
Exchange Simulator Tool
|
This tool is used to determine the outcome of an exchange of resources between two CPU-controlled “actors”. For both actors, the user may select the race, personality type, and number of each resource possessed by that actor. Then, by clicking the “Request to Trade” button, one actor will make an intelligent offer to the other actor attempting to maximize the value of the trade. If the other actor accepts the offer, then a “Decision Matrix” is created which determines whether each actor will defect and ambush the other during the trade, or cooperate and exchange the agreed upon resources. Much of the displayed numerical data serves to verify to the user that the underlying code is performing correctly. The outcome of an interaction allows the designer to see if certain exchanges are going as one would expect. |
Flocking 3D
|
This Flocking Simulation is an example of an Agent-Based Model. An agent-based model is a simulation of entities acting and interacting according to their own self-contained rules. Each agent (”Boids” as they are classically referred to as), follows three basic rules:
1. Separation – Avoid crowding nearby Boids
2. Alignment – Steer towards average heading of nearby Boids 3. Cohesion – Steer towards average position of nearby Boids
With these three rules alone, a random configuration of Boids will inevitably end up flocking together. This is a classic example of complex behavior emerging from simple rules.
|
Charged Particles (Original)
|
What happens when a thousand particles are given positive and negative charges proportional to their mass and allowed to collide and interact in 3D? Molecules are formed! This simulation demonstrates this on a very rough level, allowing the user to tweak several parameters including the number of particles, what types of charges they have, and the ratio of the repelling force to the attracting force. Under the right conditions an initial group of randomly distributed particles will coalesce, forming balls, strings, rings, and even strands which resemble the double helix structure found in our DNA!
|
Ricochet
Safety Last
|
Safety Last is a series of wacky mini-games involving airplane safety and lack thereof. The games artists and designers modeled the games art after the unique art style of airplane safety pamphlets. It should be noted that only two out of the eight planned mini-games were completed and so Safety Last, as presented here, is technically only a Demo. However the framework of the game, which I designed and programmed, is complete. It includes a completed menu and level selection system, as well as a template of code to use in the creation of future Safety Last mini-games. The first mini-game consists of strapping together a seat belt for a little girl by using the keyboard. The belt buckles are sensitive though and obtain momentum when you nudge them, and the girl periodically swipes the belts away. Thus the game requires patience and precise control. In the second mini-game you must place an oxygen mask over a man's face before the plane fills with smoke. The mask will always face towards the mouse pointer. When the mouse is clicked air will shoot out of the mask away from the mouse pointer, thus propelling the mask towards the pointer. The player must guide the mask over the man's head gently while avoiding falling luggage. When the mask is secured the player has won.
|
Eat Your Words
|
Eat Your Words is a cross between Tetris and a Word Search. You are given blocks of letters to rotate and then drop down. The object of the game is to stack your blocks in such a way as to form English words. When a word is formed it is highlighted and then removed. Also if a definition for the word is available then it is provided, thus allowing the player to strengthen her vocabulary while she plays. When a word is removed, any blocks which are now unsupported fall until they have some support (either by the "ground" or by another block). Points are scored according to the length of your word and the rarity of the letters in your word. Once a given amount of words have been made, points are tallied and the game ends.
|






















