HS.Stride.Model.Importer.Core 1.3.1

dotnet add package HS.Stride.Model.Importer.Core --version 1.3.1
                    
NuGet\Install-Package HS.Stride.Model.Importer.Core -Version 1.3.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="HS.Stride.Model.Importer.Core" Version="1.3.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="HS.Stride.Model.Importer.Core" Version="1.3.1" />
                    
Directory.Packages.props
<PackageReference Include="HS.Stride.Model.Importer.Core" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add HS.Stride.Model.Importer.Core --version 1.3.1
                    
#r "nuget: HS.Stride.Model.Importer.Core, 1.3.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package HS.Stride.Model.Importer.Core@1.3.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=HS.Stride.Model.Importer.Core&version=1.3.1
                    
Install as a Cake Addin
#tool nuget:?package=HS.Stride.Model.Importer.Core&version=1.3.1
                    
Install as a Cake Tool

HS Stride Model Importer

Multi-mesh FBX splitter and prefab creator for Stride Game Engine. Converts flattened FBX imports into individual selectable mesh parts with proper hierarchy and transform data preservation.

📦 NuGet Package

To use the core library in your own project:

dotnet add package HS.Stride.Model.Importer.Core
using HS.Stride.Model.Importer.Core.Core;

using var importer = new StrideModelImporter();
var result = await importer.ImportModelAsync(
    fbxFilePath: @"C:\Models\Complex_Model.fbx",
    outputDirectory: @"C:\Temp\Output",
    strideProjectPath: @"C:\MyStrideGame");

if (result.Success)
    Console.WriteLine($"Split into {result.SplitResult?.MeshInfos.Count} meshes");

Install HS.Stride.Model.Importer.Core alone if you want to integrate multi-mesh splitting and prefab generation into your own tools or pipelines without the UI or console app.


HS Model Importer UI

📸 Example: Before & After

Before - Complex model in Blender: Complex Model in Blender Multi-mesh model with many parts that would import as single blob in Stride

After - Individual parts in Stride: Individual Parts in Stride
Same model now has individual selectable parts and proper hierarchy

🚨 The Problem

Stride can't import multi-mesh FBX files properly. You get a single merged object instead of individual selectable parts.

What should happen:

Complex_Model.fbx → Import → Individual selectable parts
├── Gun_Body (selectable)
├── Gun_Barrel (selectable) 
└── Gun_Sight (selectable)

What actually happens in Stride:

Complex_Model.fbx → Import → Single blob
└── Gun (can't select individual parts)

✅ The Solution

This tool splits your multi-mesh FBX into individual meshes and creates a Stride prefab that recreates the original hierarchy.

  1. Splits your FBX into separate mesh files
  2. Creates a Stride prefab with proper hierarchy
  3. Preserves all transform data (position, rotation, scale)

🚀 How to Use

  1. Multi-Mesh Model File: Browse and select your FBX file
  2. Stride Project: Browse and select your Stride project folder
  3. Click Import Multi-Mesh Model

Console Application

HS.Stride.Model.Importer.Console.exe MyModel.fbx ./output/

🚨 Blender Users: FBX vs glTF

glTF/GLB exports from Blender generally work well with Stride.

Blender → File → Export → glTF 2.0 (.glb/.gltf)

Before exporting: Apply rotation and scale in Blender to avoid transform issues:

Select All (A) → Object Menu → Apply → Rotation & Scale

Note: Some very complex GLB scenes with many parts may crash during mesh splitting. If this happens, use the FBX workflow instead - export as FBX from Blender with Apply Transform enabled (see below).

FBX from Blender: Works If You Apply Transform

FBX exports from Blender work with Stride as long as you enable Apply Transform on export. Without it, you may get scale, rotation, and transform problems.

FBX from Other Tools Works Fine

  • Mixamo → FBX works directly
  • Cascadeur → FBX works directly
  • Maya → FBX works directly

⚠️ FBX Export Settings (If Using FBX from Blender)

✅ Always Enable "Apply Transform" When Exporting

When exporting FBX from Blender, ALWAYS enable "Apply Transform":

EXPORTING SETTINGS:

File → Export → FBX
└── Transform Section
    └── ☑️ Apply Transform (Experimental) ← ALWAYS check this!

Why this matters: This fixes many Stride import issues including:

  • Meshes breaking or appearing corrupted
  • Faces rendering on the wrong side
  • General geometry wonkiness
  • Does NOT change your pivot points - they stay exactly where you set them

If You're Having Rotation or Scale Issues (Models all over the place)

BLENDER SCENE SETTINGS:

If meshes are rotated incorrectly or scaled wrong after import, apply rotation and scale in Blender before exporting:

Select All (A) → Object Menu (or Right-Click)
└── Apply
    ├── ☑️ Rotation (alone)
    └── ☑️ Scale (alone)

Why this works: Ensures consistent orientation and scale for the Multi-Mesh Importer while keeping your pivot points intact.

Alternative: Apply All Transforms

If you're still having issues, you can apply all transforms in Blender:

Select All (A) → Object Menu (or Right-Click)
└── Apply → All Transforms

Note: This WILL center pivots to the center of the world. This means if you need to move the object the pivot will be in the middle of the scene.

Double-Export Workaround (Auto Rig Pro or When Apply Transform Isn't Available)

If you're using Auto Rig Pro or another tool where you can't apply transform on export:

  1. Export mesh and bones only (use ARP's export menu if available)
  2. Re-import the FBX back into a fresh Blender scene
  3. Apply scale on bones specifically
  4. Export again with Apply Transform enabled
  5. Import this double-exported FBX to Stride

📁 What You Get

Output/
├── Split/
│   ├── MyModel_Part1.fbx
│   ├── MyModel_Part2.fbx
│   └── MyModel_Part3.fbx
└── MyModel.sdprefab
  1. Run Model Importer on your multi-mesh FBX
  2. Create materials in Stride to assign to models.
  3. Assign materials to all the models your created.
  4. Drag prefab into your scene

💡 Pro Tip: After creating your materials in Stride, you can select multiple models by clicking the first model, holding Shift, and clicking the last model. Then assign materials to all selected models at once in the Property Grid to save time.

⚠️ What This Tool Handles

✅ Supported

  • Multi-mesh FBX files
  • Transform data (position, rotation, scale)
  • Mesh geometry

❌ Not Supported

  • Material assignments (create materials manually)
  • Animations (use regular Stride import,) (Not Tested)
  • Bones/Skeletons (use regular Stride import) (Not Tested)
  • Single-mesh models (import directly in Stride)

🔧 Technical Notes

  • Built with AssimpNet and .NET 8.0
  • Handles files up to 500MB
  • Works with 100+ mesh parts
  • Creates Stride-compatible prefab files

📄 License

MIT License - see LICENSE.txt for full text.


Copyright © 2025 Happenstance Games LLC

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.3.1 78 4/3/2026

v1.3.1