209 ratings
Creating Animated Sprays
By Jimo
I will explain how to create an animated spray in Team Fortress 2. This technique can also be applied to other Source games that allow animated sprays. For this guide you will require Adobe Photoshop, GIMP or PAINT.NET and VTFEdit.
Rate  
Favorite
Favorited
Unfavorite
Introduction
This guide will explain how to create an animated spray in Team Fortress 2. This technique can also be applied to other Source games that allow animated sprays.

What You Will Need
Before we get started you are going to need a few tools so you can follow along with the guide.

You will need some form of image editor. In the guide I will be using Adobe Photoshop CS5 but other revisions of the program should work just fine. You can use GIMP or PAINT.NET as a free alternative to Photoshop as well.

Additionally you will need VTFEdit (Valve Texture File Editor) which is a tool used to convert your image in to the game world. I have provided links to all of the required software below.



Getting Started
Before we start you will need to find something you want to turn in to your spray. I'm a big fan of Adventure Time, so I found this GIF of Gunter which I will be using for this guide.



The next few steps in this guide will show you how to break an existing GIF down so you can fit it within the size limits that the game has. If you have your own design, you can step ahead.

If you are feeling adventurous you can add transparency to your animated spray. Combine the techniques in this guide with my transparent spray guide to see what you can come up with.

http://steamcommunity.com/sharedfiles/filedetails/?id=121115553
Image Preparation
In order to make your spray animate it has to fit within the size restrictions. The full GIF cannot exceed 512 KB so this means a GIF such as the one we are using will be far too large. It also has to be either:

  • 512 by 512 pixels (This size is not recommended for animated sprays)
  • 256 by 256 pixels
  • 128 by 128 pixels


Because we want to make it as small as possible we are going to be using 128 by 128 pixels.

Open up Photoshop and navigate to File > Open and select your GIF. You will notice that when Photoshop opens the file it will pull up each frame of the GIF on its own separate layer, which is really handy for editing it down.



The resolution of the GIF right now is 499 by 281 pixels. In order for it to work in TF2 we will need to change that to one of the sizes listed above. Seeing as all of the interest in the image is on the penguin I am going to create a new canvas by going to File > New and setting the height and width to 128 by 128 pixels.



Open up the original image and the new smaller canvas side by side. Select every layer on the original image so they are all highlighted in blue, and then drag and drop the layers on to the smaller canvas.



With every layer selected on our new 128 by 128 pixel image, select the Move tool and make sure you have Show Transform Controls turned on located on the top bar.

Grab one of the corners and hold down Shift on your keyboard. This will keep the image constrained perfectly so it's impossible to make it look squished or deformed.



This is what mine looks like at this point.



We now have a 128 by 128 pixel image loaded in Photoshop with every frame we need to create a loop. In order for it to fit the size requirements we will need to shorten the loop, which is what we will be doing in the next section.
Shortening the Loop
As it stands our image currently has 18 frames, within those 18 frames the bottles clank together three times, while the mouth and the eyes open once. This means we have some room when it comes to deleting frames to make the loop shorter.

You can play around with the frames by showing and hiding them using the eye button located on the left hand side of the layer. I've highlighted this in the image below.



In my example I deleted everything but four layers. This creates a loop with only four frames which means the size will end up being rather small. The loop won't be perfect, but that's the nature of the beast.



You will now need to save each frame individuality. Hide every layer but the first frame and do File > Save As... and choose Targa (.TGA) as the image type. Name the image "frame1". Repeat this process until you have saved every frame in order in to its own TGA file.



You should now have four separate TGA files, all of which are a different frame in your animation.

Creating the VTF with VTFEdit
We're getting closer and all that is left to do now is convert the TGA images in VTFEdit to a single VTF. If you don't have VTFEdit yet, you can download for free here.[nemesis.thewavelength.net] For those wondering, VTF stands for Valve Texture File.

Choose File > Import and Shift click every TGA file you just created. The screen should look similar to this right before you click Open.



After you open your TGA files you will be greeted with a VTF Options menu. Below are the settings which I used, I changed my clamp to 128 by 128 as that is the size of the images, but everything else is set to the defaults. I've attached a screenshot of what I used below.



Your animation is now loaded in VTFEdit. If you would like to preview it you can do so by clicking on the Play Button located on the left hand side.



The last thing we need to do in VTFEdit is check two options under Flags on the left. Make sure No Mipmap and No Level Of Detail are checked, this will ensure the spray appears high quality in the game no matter who is viewing it. I've highlighted these settings below.



All you need to do now is File > Save As.

You will also want to do Tools > Create VMT. Simply choose the defaults when you get the options window for this, and select Create. VMT stands for Valve Material File.
Importing Into TF2
You have now finished creating your spray, and the only thing left to do is try it out. All you need to do is paste your VTF and VMT file in to your TF2 directory. For most people this is located here:

VTF: C:/Program Files/Steam/steamapps/common/team fortress 2/tf/materials/VGUI/logos
VMT: C:/Program Files/Steam/steamapps/common/team fortress 2/tf/materials/VGUI/logos/UI

If you are missing any of those folders, simply create them.

Once you have everything in the correct directory, load up TF2 and go to Options > Multiplayer. Underneath the Spraypaint Image tab you should now see your brand new spray.

If it's not on the drop down menu you will need to choose Import Spray and navigate to it within the Steam directory. If the preview of the spray appears to be either flashing, or black, that doesn't exactly mean it's not working, you'll need to try it in game to find out.



Apply your changes and join a server, if everything was done correctly you should now be finished! Keep in mind that some servers disable sprays as part of their config.

I created a short YouTube video showcasing how my spray turned out. The speed of it is a restriction of the Source engine, unfortunately there is no way around that at this time.


If you would like to download my Gunter Spray you can do so by clicking here[www.jimo.co.uk].
Closing Notes
If you have any questions or comments regarding this guide please feel free to leave a comment below or get in touch with me on Steam or through my website[www.Jimo.co.uk].

You can also check out all of my other Steam Guides here.


http://steamcommunity.com/sharedfiles/filedetails/?id=121115553
http://steamcommunity.com/sharedfiles/filedetails/?id=121356624
89 Comments
< >
(TR)JellyDoge Oct 19 @ 1:16pm 
How do you do it with GIFS you have saved from the internet?
Tiretowtruck Oct 4 @ 12:06pm 
Also how do I make it faster
Tiretowtruck Oct 4 @ 9:40am 
Its tf2 thats making the problem of not showing the new spray. I can tell since it works on gmod with the same gif. And I took the file from the logos file from TF2.
RyuuKarot Sep 6 @ 11:28am 
Does the file HAVE to be a TARGA? I'm trying to save the frames, but photoshop won't let me save it in that format.
Burn My Bread Aug 30 @ 1:29am 
Ok I followed the guide (was using GIMP 2 though) and when I to import the frames it says error invalid image face count 4 help :(
[1RAWR]E-dawgtheWolfy Jul 28 @ 1:39pm 
I got to the point where i open the four .tga files in vtfedit, but it opens them in four different windows and doesn't make them one.
SMOKER Jul 17 @ 2:55pm 
This is helpful but i don't understand how to do it with Paint.net
For anyone having trouble with the spray not being there and the old one sticking around follow the end of this video where he puts the files in. Solved the problem for me.

https://www.youtube.com/watch?v=I7-tAoo87LE
Golf Dubang Jul 8 @ 8:12am 
When I import the spray my old spray stays there.
『 MEFE 』 *THE GAME* Jul 6 @ 10:57pm 
I'm pretty much having the same problem as everyone else. VMT and VTF are in the right places, but nothing happens. Maybe I need to resize it?