BeyondImmersion.Bannou.AssetLoader.Stride
2.0.1-preview.manual.20260117173007
dotnet add package BeyondImmersion.Bannou.AssetLoader.Stride --version 2.0.1-preview.manual.20260117173007
NuGet\Install-Package BeyondImmersion.Bannou.AssetLoader.Stride -Version 2.0.1-preview.manual.20260117173007
<PackageReference Include="BeyondImmersion.Bannou.AssetLoader.Stride" Version="2.0.1-preview.manual.20260117173007" />
<PackageVersion Include="BeyondImmersion.Bannou.AssetLoader.Stride" Version="2.0.1-preview.manual.20260117173007" />
<PackageReference Include="BeyondImmersion.Bannou.AssetLoader.Stride" />
paket add BeyondImmersion.Bannou.AssetLoader.Stride --version 2.0.1-preview.manual.20260117173007
#r "nuget: BeyondImmersion.Bannou.AssetLoader.Stride, 2.0.1-preview.manual.20260117173007"
#:package BeyondImmersion.Bannou.AssetLoader.Stride@2.0.1-preview.manual.20260117173007
#addin nuget:?package=BeyondImmersion.Bannou.AssetLoader.Stride&version=2.0.1-preview.manual.20260117173007&prerelease
#tool nuget:?package=BeyondImmersion.Bannou.AssetLoader.Stride&version=2.0.1-preview.manual.20260117173007&prerelease
Bannou Asset Loader Stride
Stride engine extension for the Bannou Asset Loader SDK.
Overview
This package provides IAssetTypeLoader<T> implementations for Stride asset types:
- Model - 3D models (.sdmodel)
- Texture - Textures (.sdtex, DDS, PNG, JPEG)
- AnimationClip - Animations (.sdanim)
Installation
dotnet add package BeyondImmersion.Bannou.AssetLoader.Stride
Note: Requires .NET 10 and Stride 4.3. Full functionality requires Windows.
Usage
Register All Stride Loaders
using BeyondImmersion.Bannou.AssetLoader;
using BeyondImmersion.Bannou.AssetLoader.Stride;
using BeyondImmersion.Bannou.AssetLoader.Cache;
// In your Stride game initialization
var source = new BannouWebSocketAssetSource(client);
var cache = new FileAssetCache("./asset-cache");
var loader = new AssetLoader(source, cache);
// Register all Stride type loaders
loader.UseStride(Services, GraphicsDevice);
// Load assets
await loader.EnsureAssetsAvailableAsync(new[]
{
"polygon-adventure/hero-model",
"polygon-adventure/hero-texture"
});
// Get typed Stride assets
var modelResult = await loader.LoadAssetAsync<Model>("polygon-adventure/hero-model");
var textureResult = await loader.LoadAssetAsync<Texture>("polygon-adventure/hero-texture");
if (modelResult.Success)
{
// Use the model in your scene
var entity = new Entity { new ModelComponent(modelResult.Value) };
rootScene.Entities.Add(entity);
}
Selective Registration
If you only need specific asset types:
// Models only (no GraphicsDevice required)
loader.UseStrideModels(Services);
// Textures only
loader.UseStrideTextures(Services, GraphicsDevice);
// Animations only
loader.UseStrideAnimations(Services);
With Dependency Injection
services.AddSingleton<AssetLoader>(sp =>
{
var source = sp.GetRequiredService<IAssetSource>();
var cache = sp.GetRequiredService<IAssetCache>();
var strideServices = sp.GetRequiredService<IServiceRegistry>();
var graphics = sp.GetRequiredService<GraphicsDevice>();
var loader = new AssetLoader(source, cache);
loader.UseStride(strideServices, graphics);
return loader;
});
Supported Content Types
| Asset Type | Content Types |
|---|---|
| Model | application/x-stride-model, application/x-sdmodel |
| Texture | application/x-stride-texture, application/x-sdtex, image/dds, image/png, image/jpeg |
| AnimationClip | application/x-stride-animation, application/x-sdanim |
Architecture
This package wraps the existing scene-composer-stride loaders to implement the IAssetTypeLoader<T> interface:
┌─────────────────────────────────────────┐
│ asset-loader-stride │
│ ┌───────────────────────────────────┐ │
│ │ StrideModelTypeLoader │ │
│ │ StrideTextureTypeLoader │ │
│ │ StrideAnimationTypeLoader │ │
│ └───────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌───────────────────────────────────┐ │
│ │ scene-composer-stride Loaders │ │
│ │ (ModelLoader, TextureLoader, etc) │ │
│ └───────────────────────────────────┘ │
└─────────────────────────────────────────┘
Notes
- Models and textures use reflection to access internal Stride serialization APIs
- The animation loader is theoretical and may require adjustments for actual .sdanim files
- GPU resources (textures) are created during loading - ensure GraphicsDevice is ready
- Models don't require explicit disposal; textures should be disposed when no longer needed
License
MIT
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. 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. |
-
net10.0
- BeyondImmersion.Bannou.AssetLoader (>= 2.0.1-preview.manual.20260117173007)
- Stride.Engine (>= 4.3.0.2507)
- Stride.Rendering (>= 4.3.0.2507)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on BeyondImmersion.Bannou.AssetLoader.Stride:
| Package | Downloads |
|---|---|
|
BeyondImmersion.Bannou.SceneComposer.Stride
Stride engine extension for the Bannou SceneComposer SDK. Provides ISceneComposerBridge implementation, asset loaders, and gizmo rendering for Stride-based games. Note: Full functionality requires Windows. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.0.1-preview.manual... | 76 | 1/17/2026 |
| 2.0.1-preview.14 | 49 | 3/2/2026 |
| 2.0.1-preview.13 | 45 | 2/24/2026 |
| 2.0.1-preview.11 | 53 | 1/29/2026 |
| 2.0.1-preview.10 | 62 | 1/22/2026 |
| 2.0.1-preview.9 | 55 | 1/19/2026 |
| 2.0.0 | 113 | 1/17/2026 |
| 1.0.0 | 113 | 1/16/2026 |
| 0.1.0-preview.manual... | 57 | 1/16/2026 |