Visual effects (VFX) are the glue of modern video games, filling in the cracks between gameplay and character modeling, like icing between the layers of delicious 3d environment cake. There is a good mix of standard VFX in multiplayer: muzzle flashes, bullet hits, etc, but in conception I tried to create some really stand out visuals to augment these. I’m going to touch on some of the flashier stuff, going from concept to final and discussing some of the technical issues that we encountered.
Right off the bat, there was the issue of connecting the single-player universe’s tech to the multiplayer experience because we use the Time Manipulation Device (TMD) in ways not used in the single-player game (teleporting and shield/cloak abilities). The multiplayer portion also used machinery unfamiliar to the single-player, one case being the beacons used in the Creatures vs. Soldiers game.
Teleportation
The first multiplayer effect I created was the Blitzer’s teleportation ability. For this soldier, it was important to communicate this vanishing act without losing sight of the character. I am no physicist, but I approached the effect with the idea that you teleport your whole body by using the TMD to slow everything around you, affording you the ability to move faster than your friends and enemies.
Unfortunately, the Blitzer moved fast. Really fast. You would teleport instantly, like BAM and you are on the other side! This one-frame transition was deemed frustrating for players (though strategically interesting) so the decision was made to add a six-frame transition which helped out visually (both in first- and third-person) and with gameplay. With these six frames, I was able to add a lot more residual motion than I could initially.
Performance was not bad, but it is always something to be mindful of, especially because this effect uses a combination of CPU and GPU particles. Thankfully the bulk ofCPU-computed (read: more flexible, but not as fast as GPU-computed) particles were responsible for the small dust/debris left floating after the Blitzer, uh, blitzes, which did not have a major impact on performance. This effect is seen both in first and third person, so to aid the first-person viewpoint I added a post-process to give that brief sense of speed. Out of the four TMD powers in MP, this one is my favorite.
Shield/Cloak
Next we come to the Lurker’s shield and cloaking abilities. It, um, shields you from things and, uh, cloaks you. Yes, just like the Predator.
As a player, it’s nice to get feedback when you are shot at, right? Blood splatter, red glowy warning things on the side of your screen – but these are mostly for the first person POV.
“…but what about third person, FX guy?”
Well, if you shoot another player and nothing happens, the response from the player is something along the lines of “WTF? LAG!!”, so we needed to create a concept for the shield. After some discussion, it was decided that the shield would have the following properties:
- Scan lines moving on the character based off a force field effect in single player
- Flicker as if it were unstable
- Brighten when damaged / first used
- Fade out / disappear when not moving

Concept
It began with me relating the desired material ideas to technical artist Mike Gilardi to discuss what was feasible. We could have just ‘added’ these properties globally to the character, but we didn’t want to be paying for the effect when the shield wasn’t in use. Instead, when the character uses the shield, it simply swaps the default material with the shield material.
We used science and math and astrology and other stuff like vertex shading and local Z positions and HLSL to create the scan-line look, but the flicker effect presented more interesting logistical issues: What if you have two characters using the shield at the same time? You don’t want them both to flicker at the same time and you don’t want the scan-pattern to look the same, so we added some randomness to differentiate separate instances of the effect. We then add some glow around the character and a good looking fade-out transition.
After completing all parts of the look and doing a few minor visual tweaks, the last step was to parameterize these parts so they can be controlled dynamically and implemented by one of our friendly engineers:
- Shield color
- Shield power (Mix level with base texture)
- Cloak color
- Cloak power (Transparency)
- Outline Thickness
- Distortion Power
The Beacon
“It needs to be big, kicking up dirt and dust…a beam going into the sky…and when it goes off, it should be a huge expanding ring or wave that covers the entire map!”
I’d be lying if I said I wasn’t a little worried about this one. My task was to make a large-scale effect that would perform well in an environment with up to eight characters running around, firing guns, spilling blood, and spraying viscera all over the place. What I initially though to be a very daunting task turned out to be a really fun experiment and ultimately a pretty grand event.
After much contemplation and hand gesturing at my desk, I worked out the timing of the effect on paper and began to start collecting all the ingredients. There were four stages to the beacon’s effects:
- Repairing
- Powering up
- Projecting the link upward
- And finally…exploding, eradicating the all creatures in the surrounding area
![]()
The animation initially helped me guide the scale and timing of the effect. The actual linking beam grows over time, so it had to be turned on and scaled programmatically. I enlisted the help of our software engineers to make sure I had the necessary controls for the effect at which point we realized had to basically start over, unfortunately, and roll all the effects assets I had created into one single effect. Luckily, I was able to use some of the timing and scale I had created for the repairing and powering up of the beacon. So that’s three effects taken care of, leaving the final explosion.
Of the four stages, the final eradication blast effect was the one I worried about the most performance-wise. The initial and final scale had to be very large, large enough to cover the section of the map that the beacon was “cleaning”. I went through a number of meshes that would expand outward from the center of the beacon, finally settling on what I thought was a sensible choice: a sphere. Oh, to be an artist.
The material I had intended on using for the sphere was a causing performance hiccups. Apparently, despite how awesome it looks, distortion is the enemy of performance. Thankfully the technical artist I was working with was able to take some time to optimize the material (read: remove distortion) while retaining the atmospheric effects (lingering smoke clouds, dust specks). After working out the timing, location of the effect, and performance issues it was good to go. The end result is a satisfying and unique explosion for the game.
Having stepped away and now returning to look at the multiplayer development, it’s great to see the individual efforts put in to get visual effects working in tandem with animation and gameplay.
Shen-Ming Spurgeon
Artist
Raven Software
Special thanks to Andre Dusette, Daniel Fetter, and Mike Gilardi.
