Star Wars: Republic Commando Fan Film
As a fun side project, I created my first animation; a fan film of one of my favourite games, Star Wars Republic Commando. The animation took around half a year of after-work hours and weekends using Blender 3D’s Eevee renderer.
The video is available on YouTube. It has amassed over 250,000 views – far more than I had expected.
This post will explain (parts of) my process of creating a short animation.
I don’t have all the time in the world, and I’m a person who easily gets distracted. Side projects rarely ever see the light of day. With that in mind, I wanted to create this with as little effort as possible – partially because I’m lazy, but also because I actually wanted to finish a short film.
I’m more interested in the cinematography and visual effects than meticulously keyframing armatures.
To kick things off, I found a neat program, umodel by Gildor. It’s a small utility for ripping assets from Unreal Engine games. Republic Commando is a 2005 Unreal Engine 2 game, but the utility was almost entirely compatible. There were some issues with textures, where any texture with multiple layers would only export the first layer, but I found that screenshots on a high res screen did the trick.
umodel exports textures as tga (as one would expect) or png, and exports model in a .psk format. It also exports animations as .psa. Both of these can be imported into Blender using this amazing plugin.
All of this also works with Star Wars Jedi Fallen Order, too, which has far better quality models and animations to work with.
With textures fixed, assets imported and animations hooked up, I began the process of positioning the assets, camera and characters. It’s almost like playing with toys as a kid. Using these prebuilt assets and animations, I was able to finish something that full-time would have taken only a month or two single-handedly.
I wanted to capture the dark, gritty feel of the game. Everything felt tangible and grounded. The enemies were brutal, not placed for some violent comedic relief.
I used a dulled colour palette, and copious volumetric lighting to give the impression of a real claustrophobic space. The volumetric fog also helps hide the ancient low-quality textures and introduces very interesting looking lighting.
Lightning and blaster effects were done within Blender. Blaster bolts are a cylinder with an emissive texture, usually with a lamp parented to them. Lightning is a plane with a an animated noise displacement texture. The noise position is controlled by an empty which can be animated freely.
I added a few first-person shots using the original game HUD assets, but tweaked the animations. I think these ended up being some of the coolest, most nostalgic shots.
Even added the good old “droid blood” to the camera, like the original game.
Motion blur was excessively used to give movement more weight
I tried doing smoke simulations within Eevee, but due to its very low resolution volumetrics, the effect was very lacklustre. Instead of a dense cloud of smoke and fire, I got a puff of dust. After Effects was used to add particle and fire effects in post on top of those smoke simulations.
I used a plugin to export Blender 3D camera movement and orientation data, and imported that data into After Effects, providing a perfectly motion tracked scene.
And that’s pretty much it. I came up with a very basic story, threw a few scenes together using Blender’s VSE (video editor), and out came something I think is pretty decent.
Most assets were ripped straight from the game (models, textures, animations, sound, etc.) with some added newer elements on top. I think it shows how much modern rendering technology, like volumetric lighting, realtime shadows and better visual effects could give an old game new life.