Pages

Friday, December 21, 2012

Realistic Grass Simulation



Abstract from our paper:

This document is a report on our project for realistic grass rendering. The idea is based on Edward Lee’s thesis paper on Realistic Real-Time Grass Rendering and Rendering grass with Instancing using Direct X* 10 by Anu Kalra. The main motive is to understand Anu Kalra’s project in detail and improve upon it by creating realistic grass using methods detailed in Edward Lee’s paper.

Full Paper

Scrapyard



What is Scrapyard:
Scrapyard is a casual fighting game where customization and use of the environment are essential to success. Players control one of four quirky animals in customizable mech suits and brawl it out Super Smash Bros style. Starting a game is easy and players of any skill level can immediately jump in and start having a blast. With tons of zany customization options for your mech and a diverse set of dangerous and destructible stages, there is no end to the fun!

My Role on the Team:
As a game designer on the team with a background in competitive fighting games and programming one of my roles on the team was to work directly with the programmers to design and test game mechanics. Our game's similarities to the Super Smash Bros series allowed me to explain how things like artificial intelligence, fast falling, turning, momentum, directional influence, super armor, etc work in Smash and how we can improve upon it.
One of our major design pillars is that Scrapyard should be an enjoyable experience for both hardcore fighting game veterans and people who have never played a fighting game. As a result, I spent much of my time on the team working with a custom hitbox tool made by one of our engineers. Using the tool, I was able to specify the hit boxes on the character models where players may be struck and the attack boxes where their attacks could land. It's important to use hitboxes in a fighting game for performance since using 3d collision with complex models is computationally expensive.
Using a separate tool built by our engineers, I was able to iterate on things like the damage each move deals, animations speed, knockback values, spawning projectiles, air velocity, ground velocity, etc.
Scrapyard's Website

Vega Soft-Body Physics Game Demo

Vega Soft-Body Physics Simulation running in GGE (Ogre3D) from Erik Frimodig on Vimeo.

In this project, we integrated Professor Barbic's Vega Library for mesh deformation into the Gamepipe Game Engine (GGE). At first we did mesh deformation in Ogre with a vertex buffer and a simple cube in the GGE. After this proof of concept, we focused on gameplay, performance, and integration with the GGE. The final product consists of a mesh converted to the vega file format that reacts to the ball being thrown at it. The ball is shot from the center of the camera, which rotates around the model via keyboard input. Upon being hit, we apply a physics force to the model which deforms the collection of vertices around the point of collision. The model resets after a period of time. After completing the demo, we ran Intel Vtune Amplifier to test for performance with multiple threads for the purpose of future projects possibly using parallel processing. Unfortunately, the maximum frame rate for the test mesh was achieved with 4 internal force threads and 2 solver threads. Increasing the thread count slows down the frame rate.

Global TD

Global TD is a multiplayer tower defense game for an iPhone that uses Google Maps API.

The main challenge here was to use Google Maps API (UI View) with Cocos 2D(Eagle View) (ex. retrieving way points from Google Maps and converting them into the cocos 2D coordinate system, adjusting aforementioned points when zooming or panning). Also creating Server - Client network architecture.

As the team lead/game designer, my job involved designing the game, gameplay programming, assigning tasks for both the art and programming team, and presenting the game during presentations.