The Problem
Have you ever been uploading animations to ROBLOX, and gotten sick of having to click through multiple menus just to upload the animation? Tired of having to upload tens, or even hundreds, of commissioned animations to your group?Currently, as a ROBLOX developer, it is too much of a hassle to deal with manually uploading multiple animations in a timely manner. Having already been feature requested and asked about several times, its been an issue plaguing many for far too long.
Today, that problem is solved with the release of the Bulk Animation Upload plugin.
About the Plugin
The Bulk Animation Upload plugin provides a quick and efficient way to import animations from multiple methods, and upload them straight to ROBLOX in a single click. The best part? You can simultaneously upload up to 100 animations all at once.Current Features
- Import directly from Blender, FBX Files, or use regular old KeyframeSequences and CurveAnimations
- Control enabled joints, Animation Priority and Looping properties in an intuitive and simple way
- All uploaded animations instantly make Animation instances stored in ServerStorage
- Create Animation Events in a flash
- Preview animations on a rig before they're uploaded
- Store all uploaded animations locally without any hassle
Installation
The plugin works in two separate parts: the main Studio plugin and the backend server. The backend server is responsible for directly sending the animation data to ROBLOX servers to upload the animations, while the Studio plugin handles all front-end user interaction.Installation of the Studio plugin is quite simple. Just purchase the plugin, install it in Studio, and you’re good to go! Installation of the backend server is not that much more complicated. Instructions on its installation can be found on the GitHub page, as well as a full list and explanation of its features/settings.
Installation Videos
Usage
Connecting to the backend server
After installing and running the backend server, a tray option should show up. Clicking on this new tray icon should show this menu:
This menu displays the Hosted Port at the very top, and there are some settings that you can learn more about on the GitHub page for the server.
By default, the backend server and Studio plugin are set to use the 25037 port, though if another program is already using that port, it will use a different one. You can copy the port to your clipboard by pressing on the Hosted Port button, and inputting it into the Studio plugin:
You can then click the Connect button, and as long as everything was set up correctly, you should be greeted with the plugin's main menu!
NOTE: Auto Connect will automatically attempt to connect to the server whenever the plugin is loaded, so it is only recommended that you have it enabled if you also have the Run at Startup option enabled on the server.
TIP: Need to disconnect from the server? Just press the power button in the top left to close the current session!
Importing Animations
Importing animations can be done in four different ways: Blender, FBX Files, AnimationClip instances, and importing from Rigs.
AnimationClips
Animation Clips are a specific datatype that include KeyframeSequences and CurveAnimations. By selecting an Animation Clip in the Explorer and clicking on the Import Selected Animations button at the top, you'll add all selected Animation Clips into the Animation Export Queue.
TIP: You can import as many animations you want at once! Select all the AnimationClips in the explorer, press the import button, and they'll all be imported at once!
Importing from Rigs
Have animations stored in a rig? Just select the rig, press the Import Animations From Rig button, and it will import all animations stored inside of that rig directly to the Animation Export Queue!
FBX Files
⚠️WARNING:⚠️ ROBLOX has an FBX importing bug, and so currently the plugin will try to auto-correct the model on its own. Currently, in order for the Animation to be imported properly, you must select the rig that the animation will be played on BEFORE importing the animation. Please also always preview the animation before uploading to ensure that the animation was imported correctly.
Got a custom animation stored in an FBX file for a specific Rig? Click on the Import From FBX File at the top of the panel, select the FBX File storing the animation, and it'll be inserted into the Animation Export Queue.
NOTE: Due to the way that FBX importing currently works on ROBLOX, you must export the FBX file with the rig intact. This means that you cannot export just the animation to the FBX, you must have both the Rig and the Animation baked. Unfortunately, by having the FBX file in this state, it will upload the Rig as a mesh to ROBLOX again. Please read below for more information why, and how you can help fix it.
I’ve posted a bug report about this, but it is unlikely that the bug will be solved/fixed without significant attention on the bug. Please, if you have experienced this issue yourself, or plan to use the FBX importing feature yourself, send support to this bug report. Support can be in the form of comments, likes, or more evidence towards the bug. Thank you!
Blender
This plugin has direct integration with the Blender Plugin, and actually allows you to import animations much faster than the original. Simply select the rig that you want to import the animation on, click the Import From Blender button, and it'll automatically take the most recently exported animation saved to your clipboard and import it directly to the Animation Export Queue.
Animation Export Queue
The Animation Export Queue lists all Animations that are currently queued for uploading. From here, you are able to remove the animation from the queue, or select them to rename and edit it’s priority, looping property, joints, and its keyframe markers.
TIP: The priority selection goes both ways! Left clicking will allow you to increment the priority up by one, and right clicking will allow you to decrement the priority down by one.
TIP: You can select multiple animations to edit their properties and loop properties all at once! Use CTRL to select individual animations, or use SHIFT to select groups of animations.
Joints Control
The joint window allows you to control which joints are disabled and enabled in an animation.
Disabled joints will not be affected by the animation when playing it. This feature is good for blending animations together, such as an action involving upper-body movement with a running animation.
It is recommended that you preview the animation before uploading to see the result of disabling/enabling certain joints.
Animation Events
The Animation Events Menu allows you to add Animation Events at specific keyframes, along with specifying a value for each event.
The editor allows you to go frame-by-frame and pick out which keyframe you want to add the event to. Otherwise, you can directly type in which keyframe you want to insert it at.
TIP: By selecting the appropriate rig, you can visually see exactly what keyframe you're currently selecting! This makes it incredibly easy to determine where events should be placed.
TIP: Selecting an event marker will automatically make it go to the keyframe that the marker is on!
Upload Location
The Upload Location button will allow you to select where all animations are uploaded to.
NOTE: This is a GLOBAL upload location, meaning that all animations currently in the export queue will be uploaded to this group. There is currently no way to specifically set one animation to be uploaded to a different location.
Previewing Animations
In order to preview animations, you must select the appropriate rig that the animation will be played on. After this, you can select the animation that you want to be played from the export queue, and a Play Animation button should appear, to which you can then use to pause or play the animation on the selected rig.
Uploading Animations
When you have configured all of your animations the way you want to, you can press the Bulk Upload button, which will take all animations in the Animation Export Queue and upload them to the selected Upload Location.
After the upload is finished, all successfully uploaded animations will automatically be inserted into the Bulk Animation Uploads folder, and select all new animation instances:
NOTE: Animations that failed to upload will stay in the Animation Export Queue.
Known Issues
- FBX Importing bug (read more in Importing Animations > FBX Files)
If you find or experience any bugs, please first consider which area the bug is coming from. If the Studio plugin errors, please report it here in this DevForum post. However, if the backend server is the error, please refer to the GitHub page for reporting issues there.
Planned Features
- Add support for re-uploading animations — if you know of an endpoint for re-uploading animations, please let me know!
Credits
@Sol_ttu - UI, Logo and general feature requests