User:Dcsg/Blades Emote Gifs
This is half documentation, half instruction for anyone who wants to do this or something similar. Feel free to contact me for specific questions or issues.
Step 1[edit]
The first step is to record the animation playing in-game. I use AZ Screen Recorder android app. I equip Steel armor and an Iron Sword, to look like the guy in the art. I use Iron Gauntlets instead of steel since steel is open and shows the character's race through the fingers. I go to Town and look directly upwards to the sky, trying to find a spot where the right half of my screen is as solid a blue as possible, and where there are no falling leaves or other particle effects. I use the recording software to record a loop of the animation playing. I use all the highest settings on the screen recorder (it's a short clip), except framerate at 25fps, which I will explain in step 6. I upload the mp4 to Google Drive by "Sharing" on the done screen.
Step 2[edit]
Moving to a computer, I download the file. From here, you'll need to have GIMP and a couple of plugins that are essential. Firstly, GAP, an old, defunct plugin. The links on the creator's old page are broken, so try scouring the internet and you'll eventually find a charitable soul who has uploaded the abandonware on their file sharing website of choice. Second is a small script to have better control over layers.
Step 3[edit]
You're going to open GIMP, and under the new Video tab, go to Video -> Split Video into Frames -> Extract Videorange
. The window may look a little strange if you're using newer versions of GIMP, but it is still very functional. You can also resize most windows if they are too small. Click ...
next to Videofilename
and navigate to your animation loop video. Change To Frame
to as many 9's as you want to ensure the whole video is extracted. Change Audiotrack
to 0. Click on Create only one multilayer Image
. This is a toggleable checkbox, but it always starts as "off", so just click it once. Click OK
and wait for the process to finish.
Step 4[edit]
In the layers tab/window, scroll to the bottom layer. Scroll up and find the first frame of the animation by using the thumbnails and/or Shift-clicking on the visibility of the tab you want to inspect to show only that layer. The starting frame for Blades Emotes is usually the first frame where the iron sword disappears. Delete every frame UNDER the starting frame. I highly recommend making a keybind for deleting layers by going to Edit -> Keyboard Shortcuts
, searching for Delete Layer
, clicking on it, then clicking the key you want to assign and hitting Save
. Next, find the ending frame by a similar process. You may want to click the visibility box without shift so that you can keep the starting frame as a guide for when the animation has done a full loop. Once you have found the lowest frame that looks identical to the starting frame, delete it and every layer ABOVE it by selecting the top layer and deleting until you have deleted the final layer.
Step 5[edit]
Now, using the Rectangle Select Tool
, I select the borders of the animation box. Then Image -> Crop to Selection
. Next, go to Image -> Canvas Size
and copy the lower value of Width and Height into the other to make the image 1:1, pressing Enter for the preview to take effect. Make sure that the little link icon to the right is broken. Change the offset to your needs: for blades emotes, I set the Y offset to as low as possible to crop the top off since there is excessive empty space there, however you may want to click Center
, again depending on the scenario. Set Resize layers
to All layers
and hit Resize
. Next, go to Image -> Scale Image
. Here you will want to set the size to whatever seems appropriate, making sure the little link icon is unbroken. 300x300px is what I use for the Blades Emotes. If your image is already around a similar size, you may want to just skip this step. Hit Scale
.
Step 6[edit]
Observe this desmos graph which compares Framerate (the Frames/Second that videos use) to Frame delay (the Milliseconds/Frame that gifs use). Gifs can only be exported using multiples of 10ms of frame delay. If you have complete control over your recording framerate, then you can just pick whatever framerate corresponds to the frame delay multiple of 10 that suits the scenario. 20fps is the lowest the program I use can go, and so by recording at 25fps and deleting every other frame, I can achieve 12.5fps with a frame delay of 80ms. I delete every other layer in GIMP by noting whether the starting frame is odd or even and that I will delete all frames that aren't that. Let's say the starting frame is odd, so I delete all even numbers. Scroll up to the top, selecting the final frame layer. If it is also odd, I will keep note of it and select the previous layer. Then, delete the layer, press the down arrow key, and keep repeating until you have reached the first frame layer. Then, go to Filters -> Animation -> Optimize (for GIF)
. Once it is done, go to Filters -> Animation -> Settings...
. Set Delay
to the frame delay (80
for 12.5fps) and Mode
to (combine)
. Hit OK
. In my case, since I noted that the final frame was odd like the first one, I will manually rename the final layer to say 40ms
.
Step 7[edit]
Go to File -> Export As...
and save it wherever you want, named whatever you want, as a .gif
. Remember to obey naming conventions when you upload it to UESP. Click Export
. Uncheck GIF comment
. Check As animation
and Loop forever
. Make sure that the two "all frames" boxes are UNCHECKED. Hit Export
.