Model Loading
EmoteLab supports two types of models:
-
Built-in models: Models that are included with EmoteLab when you install it. These models are ready to use immediately and come with all necessary files pre-configured.
-
Local models (third-party models): Models that you add yourself by placing them in a specific folder on your computer. These are models you've obtained from other sources or created yourself.
All models are automatically discovered when EmoteLab starts, and they appear in the Models list in the main interface.
Loading a Model
Step 1: Locate the Models List
When you open EmoteLab, look at the left side of the editor window. You'll see a section labeled Models. This list displays all available models that EmoteLab has found on your system.

Step 2: Browse Available Models
The Models list shows several pieces of information for each model:
- Preview Icon: A small preview image showing what the model looks like (if a preview image is available)
- Model Name: The name of the model
- Model Type Indicator: A label showing whether the model is built-in or a local model
- License Button: A button you can click to view license information and attribution details for the model
You can scroll through the list to see all available models. The list is organized alphabetically by model name.
Step 3: Select a Model to Load
To load a model, simply click on it in the Models list. The selected model will be highlighted to show it's been chosen, and the loading process will begin automatically.
Step 4: Wait for the Model to Load

During the loading process, the editor interface will be temporarily disabled to prevent actions while the model is loading. Loading typically takes just a few seconds, but larger models with many textures may take longer. The interface will be re-enabled after loading finishes.
Step 5: Verify the Model Loaded Successfully
After loading completes, you should see:
- The model displayed in the viewport
- Character customization options becoming available
- Animation lists populated with the model's animations
Unloading a Model

To remove the currently loaded model from the viewport, use the Unload Current Model button located directly below the Models list.
You can only have one model loaded at a time. If you click on a different model in the list, the currently loaded model will be automatically unloaded and replaced with the new one.
Adding New Models
Built-in Models
Built-in models come pre-installed with EmoteLab. When you update EmoteLab, any new built-in models included in the update will automatically appear in the Models list.
Local Models
Local models are models you add yourself to EmoteLab. These can be models you've downloaded, purchased, or created using Spine or other compatible software.
Local models must be placed in a specific folder on your computer.
%USERPROFILE%\AppData\LocalLow\GlycoProduction\EmoteLab\SpineModels\
Model Folder Structure
Each local model must be in its own folder within the SpineModels directory. If the SpineModels folder doesn't exist, EmoteLab will create it automatically the first time it runs. The folder structure should look like this:
SpineModels/
└── ModelName/
├── ModelName.json (required - skeleton file)
├── ModelName.atlas.txt (required - atlas file)
├── texture1.png (required - texture images)
├── texture2.png (required - texture images)
└── ... (additional texture files)
Adding a Local Model
To add a local model to EmoteLab:
-
Prepare your model files
- Ensure you have the skeleton file (
.json), atlas file (.atlas.txt), and all texture files (.png) - Optional files include a preview icon (
icon.png) and license file (LICENSE.txtorLICENSE.md) - Ensure all files are in the same folder
- The folder name doesn't need to match the model name, but using a clear, descriptive name is recommended
- Ensure you have the skeleton file (
-
Copy the model folder to the local model directory
- Navigate to the
SpineModelsfolder - Copy the folder including all the required files into the
SpineModelsfolder
- Navigate to the
-
Restart EmoteLab
- EmoteLab automatically scans for new models when it starts
- The new model should appear in the Models list
- The skeleton file must be named
[ModelName].jsonwhere[ModelName]is the name that will appear in EmoteLab - The atlas file must be named
[ModelName].atlas.txtwhere[ModelName]matches the skeleton file name (without the extension) - The folder name can be different from the model name, but using the same name is recommended
- File names are case-sensitive on some operating systems, so ensure consistent capitalization
Troubleshooting
Local Model Doesn't Appear in the List
- Check the folder location: Ensure the model folder is in the correct
SpineModelsdirectory - Check file names: Verify that the skeleton file is named
[ModelName].jsonand the atlas file is named[ModelName].atlas.txt - Check file format: Ensure the skeleton file is in JSON format (not binary
.skel.bytesformat) - Restart EmoteLab: Close and reopen EmoteLab to trigger a new scan for models
- Check for errors: Look for error messages in the console or log files that might indicate what's wrong
Local Model Fails to Load
- Check required files: Ensure all required files (skeleton, atlas, textures) are present
- Check texture files: Verify that all texture files referenced in the atlas file exist and are in the same folder
- Check file integrity: Ensure files aren't corrupted or incomplete
- Check file permissions: On some systems, file permissions might prevent reading the files
- Try a different model: Test with a built-in model to see if the issue is specific to your local model
- Large models: Very large models with many high-resolution textures may take longer to load. Be patient during the loading process.