H073.HxGLTF.MonoGame
2.0.0
Prefix Reserved
dotnet add package H073.HxGLTF.MonoGame --version 2.0.0
NuGet\Install-Package H073.HxGLTF.MonoGame -Version 2.0.0
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="H073.HxGLTF.MonoGame" Version="2.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="H073.HxGLTF.MonoGame" Version="2.0.0" />
<PackageReference Include="H073.HxGLTF.MonoGame" />
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 H073.HxGLTF.MonoGame --version 2.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: H073.HxGLTF.MonoGame, 2.0.0"
#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 H073.HxGLTF.MonoGame@2.0.0
#: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=H073.HxGLTF.MonoGame&version=2.0.0
#tool nuget:?package=H073.HxGLTF.MonoGame&version=2.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
HxGLTF.MonoGame
Load glTF/GLB models into MonoGame — with PBR materials, skeletal animation, morph targets, and a clean scene graph powered by ModelKit.
Bridges HxGLTF (pure GLTF 2.0 parser) and ModelKit (scene graph). One line loads a model into a Scene.
var scene = FormatRegistry.LoadScene(GraphicsDevice, "character.glb");
Installation
dotnet add package H073.HxGLTF.MonoGame
<PackageReference Include="H073.HxGLTF.MonoGame" Version="2.0.0" />
Pulls in H073.HxGLTF and H073.ModelKit automatically.
Usage
using ModelKit;
// Auto-discovered — just reference the package
var scene = FormatRegistry.LoadScene(GraphicsDevice, "model.glb");
// Async
var scene = await FormatRegistry.LoadSceneAsync(GraphicsDevice, "model.glb");
// With options
var scene = FormatRegistry.LoadScene(GraphicsDevice, "model.glb", new LoadOptions
{
SkipAnimations = false,
SkipTextures = false,
KeepCpuData = true
});
Deferred Loading
Separate CPU parsing from GPU upload for background loading:
// Any thread (no GraphicsDevice needed)
var parsed = GlbModelLoader.Parse("model.glb");
// Graphics thread
var scene = GlbModelLoader.Upload(GraphicsDevice, parsed);
What You Get
A Scene containing:
| Data | Description |
|---|---|
Meshes[] |
GPU vertex/index buffers, bounds |
Materials[] |
PBR (metallic-roughness), Phong (specular-glossiness), Unlit |
Skeletons[] |
Bone hierarchy, inverse bind matrices |
Animations[] |
Translation, rotation, scale, morph weight channels |
Nodes[] |
Scene graph with transforms |
Cameras[] |
Perspective / orthographic |
Material Mapping
| glTF | ModelKit |
|---|---|
baseColorFactor |
Material.Color |
baseColorTexture |
Material.Texture |
emissiveFactor |
Material.EmissiveFactor |
emissiveTexture |
Material.EmissiveMap |
normalTexture |
Material.NormalMap |
metallicRoughnessTexture |
Material.MetallicRoughnessMap |
occlusionTexture |
Material.OcclusionMap |
metallicFactor / roughnessFactor |
Material.MetallicFactor / Material.RoughnessFactor |
alphaMode |
Material.AlphaMode (Opaque, Mask, Blend) |
doubleSided |
Material.DoubleSided |
| KHR_materials_clearcoat | Material.ClearcoatFactor |
| KHR_materials_transmission | Material.TransmissionFactor |
| KHR_materials_ior | Material.IOR |
Vertex Formats
| Format | Stride | When used |
|---|---|---|
VertexPositionNormalTexture |
32B | Standard meshes |
VertexPositionNormalTextureColor |
36B | Meshes with vertex colors |
VertexPositionNormalTextureTangent |
48B | Meshes with tangent data |
VertexPositionNormalTextureSkin |
68B | Skinned meshes |
Limitations
- No built-in renderer — ModelKit provides data, you provide the rendering
- GPU thread — VertexBuffer/Texture creation needs the graphics thread. Use
Parse()/Upload()for background loading - Max bones depends on your shader constant buffer size
Related
- H073.HxGLTF — Pure .NET GLTF 2.0 parser
- H073.ModelKit — Scene graph, animation, materials
License
MIT
Contact
Discord: sameplayer
| Product | Versions 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 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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- H073.HxGLTF (>= 2.0.0)
- H073.ModelKit (>= 1.0.0)
- MonoGame.Framework.DesktopGL (>= 3.8.4)
- StbImageSharp (>= 2.30.15)
-
net8.0
- H073.HxGLTF (>= 2.0.0)
- H073.ModelKit (>= 1.0.0)
- MonoGame.Framework.DesktopGL (>= 3.8.4)
- StbImageSharp (>= 2.30.15)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.