Jed's Portfolio
Home



Jed Lang

Video Game/Tool Programmer
Tools for Development.

The most notable projects I have worked on during my programming years.  Most of these projects were started specifically because of their being based on a significantly different programming specialization, allowing me to expand my areas of expertise substantially.  One of the areas that I've found myself to be the most skilled in is the area of low level systems, such as virtual machines, and in-depth structure manipulation, such as data file reverse engineering.  This has the added benefit of having extended my skill set into a lot of low-level areas in 2D/3D graphics, as well as their manipulations.  Being that a good portion of these tools have been written for Japanese games, many tools have been written to be bilingual English/Japanese.


Modules for Games.

My initial interest in programming had me working on 3D video games- most specifically, various modules that can be applied to both 2D and 3D games.  While the majority of my 3D programming has been with working with existing rendering engines, such as Irrlicht, and Ogre3D, I have extensive experience with not only using such an API, but also with learning new APIs in order to apply them to the project at hand.  My continued 3D game programming has me working on many robust, reusable, and extensible, bug-free modules since I've always been of the mind to "do things properly"- this has allowed me to reuse a good portion of my code between projects, as well as allowing me to expand my experiences into other areas instead of wasting my time redoing the same old things.


Tying it together.

The vast majority of modules have been programmed so as to be integrated into an existing system relatively easily.  Typically this means they have been programmed so as to extend existing plugin-capable systems, or have been programmed in parallel with a plugin-capable system in order to allow for the most extensible programming environment possible.  In cases where it's allowable, proprietary file formats and parsers are written, allowing for things such as scripts and XML to interface with the modules, limiting the recompiling time when extending module capabilities.