From about 2000-2003 I did a bunch of stuff with weapons on Syphon Filter Omega Strain for the PS2, including weapons modeling, weapon integration with the character hardpoint system, weapon FX, and some scope artwork. There were around 60 different gun models and they came together at about 3 a day, built in 3DSMax and averaging around 300 triangles. Our texture budget on SFOS was amazingly tight, since it was a 4 player online-coop game where each character could have a completely different outfit and weapons. I opted for what at the time was a novel texturing approach used by Metal Gear Solid where the highlights and shadows and specular reflections were painted in and high frequency details were often left to geometry. To up the vertex count to support this detail, it was vital to have efficient tristripping, so I’d just shoot a planar projection through the side of pieces of the gun to keep all the verts continuous.
Here’s a short clip showing one of my favorites to model, the FN-P90 – Watch Video
The weapons were also very visible to the player because of the hardpoint system. When characters stowed their guns, they’d go to one of four places on the skeleton – back, thigh right, thigh left, or chest. Since it is a third person game, the back hardpoint would really shove the gun right in the player’s face, so detail was important to maintain. Still, the texture resolution in multiplayer mode was set to half that of single player, and things would tend to get blurry. Luckily the geometry did much of the work, and considering that the models were all lit by the world, this didn’t end up being that bad.
Weapon FX had a bunch of different components. The gun flare was an actual model that was turned on and off, and was positioned via the gun’s skeleton. Yes, guns in this game had skeletons! Initially, the game design was more of an online RPG and had called for a crazy weapon customization system where players could purchase scopes, silencers, and the like. Most of these elements were dropped in the final design, but the gun skeleton was still used for a few things:
- A bone to align the character’s trigger hand to dynamically
- A bone where the support hand would go
- Positioning of the gun flare
- A bone for FX to emit from
As far as the FX, smoke particles were created and would shoot out of the tip of the gun. A light was also turned on with each shot. Turns out that the system also supported spawning a particle emitter on the bullet as well. And another one when it impacted! This was crazy, the amount of calculation that was being done. Bullet hits were tracked per bone, with ellipsoids around each one. You could shoot a guy in the arm, leg, head, and it would all be tracked. The character programmer even turned the vertex color red wherever a guy was hit. You know, cause that’s what blood looks like.
So, with that in mind, we got busy with the system late one night and hacked up a flamethrower, and it was awesome. It still is one of the only flamethrowers in-game that I’ve seen that properly splash fire on a surface that it hits. Here’s a Youtube playthrough that had to deal with them. Our designers made this last mission of the game nearly impossible.