Skip navigation

Development blog activate.

Card Kingdom is a 3D arena-style brawler where the player controls an anthropomorphized playing card that defeats overwhelming numbers of zombified cards raised by the evil Joker to conquer Card Kingdom.

Read More »

InZero is a 2D side scrolling action/platformer where the player utilizes grenades that perform various physics effects: pull, push and slow, which affect the player, enemies, projectiles and environmental objects.

Read More »

The main project for Computer Graphics II was to write a ray tracer that supported multiple geometric shapes that could be rendered, multiple shading and lighting models, and multi-sampling for a smoother and more high-fidelity image. As a graduate student, additional functionality was required for the project. I decided to replace the standard pinhole camera with a more realistic camera model, as well as distributing the rendering processes across multiple networked computers.

Read More »

This plug-in simulates how a wiki links between pages. By specifying the root URL of the wiki, terms in normal HTML can link to the corresponding wiki page. It also supports the use of aliases for terms.

Read More »

DirectJ adds support for DirectX 9 in Java. The design is meant to be as close to the original C/C++ API as possible. This is to ensure ease of use for current DirectX 9 developers to switch between the original and the Java implementation.  Currently, only Windows is supported, but with projects such as Wine, other Unix based platforms could use the API.

Read More »

Smash Force is a 2D top-down shooter consisting of multiple levels, enemies and weapons made for Foundations of 2D Graphics Programming course at RIT. In the 10 week course, we designed and implemented the entire game starting from scratch.

Read More »

Bloxen Wars is a 3D third-person networked multiplayer game made for Foundations of 3D Graphics Programming course at RIT. In the 10 week course, we designed and implemented the entire game starting from scratch.

Read More »

A requirement that came up for the web project I’m working on was a way to have users get a unique code that can be redeemed on the site. I was told that on a previous project they used a single code for each redeemable item, which did not work well at all. I came up with, what I think is, a pretty elegant solution.

Read More »

The next game I’ll be working on in a few months will feature a way to “cut” a mesh in two. I spent a few days figuring out how to actually do it. A post over at the Oren Game Engine site really helped out. The process is pretty much this:

Read More »

I don’t know why I haven’t gotten into this earlier. Here are some of the things I’ve learned while tinkering around.

Don’t use static variables.

The tutorials I’ve read say to use static final variables in your code for readability. I totally agree with this, except for the part about declaring the variables static. When you declare a static variable, the name of the variable gets stored in the string pool in the header. Even if it’s final. And even if it’s private. That means that every one of the static variables’ names is spelled out in modified-utf8 in the header. There goes your class size, exploding out of proportion.
Read More »