A bulk asset importer for the Stride game engine that converts raw asset files (.fbx, .png, .jpg, etc.) into proper Stride assets (.sdtex, .sdmat, .sdm3d, etc.) with correct folder structure and cross-references.
Available as both a modern UI application and console application:
Importing hundreds of game assets one-by-one in Stride GameStudio is tedious and time-consuming. This tool automates the bulk import process while maintaining proper folder organization and asset relationships.
The Problem: Manual asset import in Stride requires:
- Importing each texture, model, and audio file individually by dragging into GameStudio or into the resource folder, then creating each asset by hand
- Creating materials and linking them to textures manually
- Importing raw files like .json one at a time (useful for dialog systems when you need to import hundreds of JSON files or CSVs)
The Solution: HS Stride Mass Importer handles all of this automatically in a simple 3-step process.
- Textures (.png, .jpg, .jpeg, .bmp, .tga, .dds) β
.sdtexassets - 3D Models (.fbx, .obj, .dae, .gltf, .glb) β
.sdm3dassets - Materials (auto-generated from textures) β
.sdmatassets - Raw Assets (.json, .xml, .txt, .csv) β
.sdrawassets - Audio Files (.wav, .mp3, .ogg, .flac) β
.sdsndassets - C# Code (.cs) β Imported directly into your project's code folder
- Animations - Complex import requiring precise control
- Skeletons - Requires manual setup and configuration
- Complex Materials - Auto-generated materials are basic; create custom materials in GameStudio
- Specialized Assets - Fonts, videos, shaders, etc.
- Folder Structure Preservation - Maintains your source organization
- Path Fixing - Updates all asset references to work correctly
- Material Generation - Creates basic materials for each texture
- Resource Organization - Places files in proper Resources/ and Assets/ locations
How I'm using this tool: I create a new Stride project to import all the assets I need, then use HS Stride Packer to export a .stridepackage and import it into my real Stride projects later. I plan on using the Synty Prototype kit frequently, so it made sense to create a reusable .stridepackage.
Mass importing .json data and CSV files for dialog systems created in external tools for NPCs, being able to mass import raw assets was essential.
- .NET 8.0 Runtime
- Stride Game Project (4.2 or newer recommended)
- Build and run
HS.Stride.Mass.Importer.UI - Fill in the 3 fields:
- π₯ Package Name: Enter a name for your asset package (e.g., "SyntyPack", "Characters")
- π Source Assets Folder: Browse and select the folder containing your raw assets
- π― Target Project: Browse and select your Stride project directory
- Click Import Package to start the process
- Build and run
HS.Stride.Mass.Importer.Console - Follow the 3-step wizard:
- Step 1: Enter package name (e.g., "SyntyPack", "Characters")
- Step 2: Select source folder containing your raw assets
- Step 3: Select target Stride project directory
Both applications will automatically:
- Scan and categorize your assets
- Copy resources with proper folder structure
- Generate Stride assets with correct references
- Create basic materials for textures
When working with hundreds of imported models, select multiple models in Stride Game Studio by clicking the first model, holding Shift, and clicking the last model You can then assign materials to all selected assets simultaneously in the Property Grid.
SourceFolder/
βββ Characters/
β βββ hero.fbx
β βββ hero_texture.png
βββ Weapons/
β βββ sword.fbx
β βββ sword_diffuse.png
βββ Audio/
βββ sword_clash.wav
StrideProject/
βββ Resources/PackageName/
β βββ Characters/
β β βββ hero.fbx
β β βββ hero_texture.png
β βββ Weapons/
β β βββ sword.fbx
β β βββ sword_diffuse.png
β βββ Audio/
β βββ sword_clash.wav
βββ Assets/PackageName/
βββ Characters/
β βββ hero.sdm3d
β βββ hero_texture.sdtex
βββ Weapons/
β βββ sword.sdm3d
β βββ sword_diffuse.sdtex
βββ Materials/ # Materials organized at package level
β βββ hero_texture_Mat.sdmat
β βββ sword_diffuse_Mat.sdmat
βββ Audio/
βββ sword_clash.sdsnd
AssetPack/
βββ Models/ # Clear folder names
βββ Textures/
βββ Audio/
βββ Data/ # JSON, XML, config files
SyntyFantasy- Asset pack identificationPlayerCharacters- Asset type descriptionUIElements- Functional grouping
AssetPack/
βββ random_stuff/ # Unclear organization
βββ test_files/ # Temporary content
βββ backup/ # Non-game assets
βββ untitled_folder/ # Generic names
| Type | Extensions | Output |
|---|---|---|
| Textures | .png, .jpg, .jpeg, .bmp, .tga, .dds | .sdtex assets |
| Models | .fbx, .obj, .dae, .gltf, .glb | .sdm3d assets |
| Audio | .wav, .mp3, .ogg, .flac | .sdsnd assets |
| Raw Assets | .json, .xml, .txt, .csv | .sdraw assets |
| C# Code | .cs | Source code files |
Note: .cs files from asset packs are usually Unity-specific and require modification for Stride.
- β Not a full pipeline replacement - Advanced materials need manual creation
- β Not an animation importer - Animations require careful setup in GameStudio
- β Not reversible - No "uninstall" feature (manual cleanup required)
β οΈ Close Stride GameStudio for best results- π Backup your project before large imports
- π Organize source assets in logical folders first
This tool is designed to handle the most common bulk import scenarios. If you encounter file types or workflows that aren't supported, contributions are welcome.
Apache License 2.0 - see LICENSE.txt for full text.
HS Stride Mass Importer
Copyright Β© 2025 Happenstance Games LLC