Download my Curriculum vitae
The Game Assembly
E-mail me!
Linked In

Dynamic Shader Package for UDK

In this video you'll see a large number of dynamic shaders and effects that I created in UDK.

This is some of the materials and effects that you will see:

- Splat shader with water elements (puddles growing as the rain falls)

- Vertex displacement for vegetation affected by UDK wind system

- Fire shader and emitters with dynamic start/end

- Rain effects for most materials

- Parallax effect for windows (making the spectator think that the flat surface actually has a depth)

- Rain particle system with refraction

- Dynamic sky

- Up vector shader for objects covered in moss. See describing video / tutorial here.


...and quite a few props ofcourse.


I'll be posting more describing videos for each shader in the near future.


Thank you for watching!

Batch Bake Normal Maps in Maya

Download Batch Bake Normal Maps (.zip)

How to use: copy to your Maya scripts folder. Start Maya and type batchBakeNormalMaps.batchBakeNormalMaps() in the python command line.


The artists in Tricycle Cavalry were very happy with this tool which reduced the baking procedure quite a bit.


I also wrote a workflow documentation on hard surface modelling which can be seen here:



Workflow documentation on Hard Surface Modelling.

Download (.pdf)

Water Dripping Shader & VFX in Unreal Engine 4

A small project I made in Unreal Engine 4.

The video got some attention on youtube and a tutorial was requested so I made one.

If you want to try it out, textures can be downloaded from here.

Helicopter model HKP9

Model of helicopter HKP9 for Arma III. Configured by the Swedish Forces Pack team. Modelled and textured by me.

Arma III and music by Bohemia Interactive.

Car explosion in UDK

In this video you'll see a car exploding. It's a scene with visual effects, shaders, animation and physics that I made in UDK. The car model was made modular, making it possible to use physics in a nice way. In the video you'll actually see two explosions. One with some animation and one completly dynamic.


This is some of the things that you will see:

- Vertex displacement shader which uses vertex colors for displacement when exploding.

- Particle systems with fire, smoke, heat (distortion), dust.

- "Car burning over time"-shader. It uses a b/w - image / height map, working together with a parameter that changes over time. It also uses a mask to mask out everything that should be burning.

- "Ivy burning over time"- shader. Pretty much the same thing.

- Decals with glowing/fire effect.

- Fire shader.

- Physics.

- Animation.


Thank you for watching!

Terrain Importer for Maya

This script samples the UV from selected texture and displaces the vertices. The user can choose number of subdivision and size of terrain. While developing the RTS game Paw's of War the level designers used Maya as level editor and the terrain was ofcourse needed when placing props etc. Maya's Displacement Tool didn't work very well together with our engine and that's why this tool was written. The designer can also choose to import a custom splat shader (.cgfx) made in mental mill. The script was written in Python.

Download (.zip)

Level Exporter from Maya to .xml

The level designers in Tricycle Cavalry used Maya as level editor for our Space shooter, RTS and FPS games. The script reads shaders to get terrain data, object orientation, light direction, position and color, reads and compares our entity lists (.xml) and probably a couple more things before it outputs the .xml file. The script was written in Python.


The iteration you see in the picture is the RTS version. The FPS versions comes with slightly more advance things such as connecting rooms and portals.

Color tint shader


When texturing I couldn't decide what color I wanted on my car model in my destruction scene so I simply made a tint shader for the car instead.

This is how to shader works:

Diffuse Color = max ( 0, min ( Vector3 * ColorMask + Texture, 1))


HLSL Water shaders for Paw's of War

Updated 2014-06-25 with this new video.

I decided to revise the shader - removing hard edges, ugly lines caused by refraction, implementing depth and more refraction.


This is a short video of the water and waterfall shaders I wrote for the RTS game Paw's of War. I rewrote a refraction shader and added distortion in the normal and albedo maps along with vertex displacement.



Up Vector Shader in UDK (describing video / tutorial)

A desciption / tutorial of the up vector shader I used in my "Dynamic Shader Package" scene and video.

My contributions in the FPS Project Lockdown

My contributions:

- Tools and scripts: Level exporter, Level importer, Level editing tools (rooms- and portal creation, snapping tools etc) and a Batch Bake Normal Maps tool.

- HLSL Shaders: Water, blinking light, faked clouds for windows.

- VFX: Dust / faked light, fire, fire extinguisher- and pipe smoke/water with refraction.

- .lua scripting.

- GFX: pipes, floor tiles with water/blood, computers etc.

- Graphics optimization.

- Tech support.

- Level dressing.

- Lighting.

- Lens flare texture.

For best viewing experience, please watch this website on a desktop.