#gltf #csharp #library #3d #format #decoder #encoder #gamedev #asset #pipeline

Vicente Penades c542d65265 Breaking change: Refactored SparseWeight8 and VertexSkinning interfaces and structures to make it more strict, and avoid some bad practices and pitfalls. 4 years ago
.github 37cf323cc7 WIP: tangent space generation support 6 years ago
build 61524ad717 update nugets 4 years ago
examples 5c684eca1c Improved matrix validation. 4 years ago
src c542d65265 Breaking change: Refactored SparseWeight8 and VertexSkinning interfaces and structures to make it more strict, and avoid some bad practices and pitfalls. 4 years ago
tests c542d65265 Breaking change: Refactored SparseWeight8 and VertexSkinning interfaces and structures to make it more strict, and avoid some bad practices and pitfalls. 4 years ago
tools 07e775eee8 Updated gltf validator to 2.0.0-dev.3.3 (still WIP) 5 years ago
.gitignore 9e2e0531f4 Initial commit 7 years ago
LICENSE 9e2e0531f4 Initial commit 7 years ago
README.md 7fb235ef9f Improved performance of the mechanism behind LogicalIndex property used by most glTF objects. 5 years ago
SharpGLTF.ruleset ee789d20f5 Updated nuget packages. 5 years ago
SharpGLTF.sln 8cfa448af4 version bump 5 years ago
stylecop.json 4d29fdd7c1 stylecop change! 6 years ago

README.md

GitHub Nuget (with prereleases)

Overview

SharpGLTF is a 100% .NET Standard library designed to support Khronos Group glTF 2.0 file format.

The library is divided into two main packages:

  • SharpGLTF.Core provides read/write file support, and low level access to the glTF models.
  • SharpGLTF.Toolkit provides convenient utilities to help create, manipulate and evaluate glTF models.

Nuget Packages

|Package|Version| |-|-| |SharpGLTF.Core|Nuget (with prereleases)| |SharpGLTF.Toolkit|Nuget (with prereleases)|

The library is still in preview status because the APIs are still subject to change from version to version, but most of the features are already completed and heavily tested, so I believe the code is mature enough to be used in production.

Quickstart

A simple example of loading a glTF file and saving it as GLB:

var model = SharpGLTF.Schema2.ModelRoot.Load("model.gltf");
model.SaveGLB("model.glb");

More examples can be found here and in the Test project.

Appendix