Add support for importing and exporting GLB version 3 files #905

Stale Open
aaronfranke opened 3:47am on June 23, 2026 wants to merge 1345 Δ into khronosgroup/unitygltf main from
support-glb3

Pull request #905 quality checks

Code files and functions touched by this pull request are analyzed below.

Quality targets

How does this pull request compare to chosen code quality targets? Read more about code quality targets.

Target name Target value This PR
Maximum Diff Delta per PR 500 1345
Maximum comment count per PR 10 0
Pull request maximum business days between activity 3 64
Pull request maximum business days open 5 64

Coupled files

Are there any files from this commit that are always committed alongside another file? This often suggests that there exists code coupling to potentially remove. Read more about code coupling

Committed together % Code file
Coupled code file
Commits in PR with both
100 Runtime/Scripts/Cache/BufferCacheData.cs
Runtime/Plugins/GLTFSerialization/Schema/Accessor.cs
2
100 Runtime/Scripts/Cache/BufferCacheData.cs
Runtime/Plugins/GLTFSerialization/GLTFHelpers.cs
2
100 Runtime/Scripts/Cache/BufferCacheData.cs
Runtime/Plugins/GLTFSerialization/AttributeAccessor.cs
2
100 Runtime/Scripts/Cache/BufferCacheData.cs
Runtime/Scripts/SceneImporter/ImporterTextures.cs
2
100 Runtime/Scripts/Cache/BufferCacheData.cs
Runtime/Scripts/SceneImporter/ImporterSkinning.cs
2
100 Runtime/Scripts/Cache/BufferCacheData.cs
Runtime/Scripts/SceneImporter/ImporterMeshes.cs
3
100 Runtime/Scripts/Cache/BufferCacheData.cs
Runtime/Scripts/SceneImporter/ImporterAnimation.cs
2
100 Runtime/Scripts/Cache/BufferCacheData.cs
Runtime/Scripts/GLTFSceneImporter.cs
3
100 Runtime/Plugins/GLTFSerialization/AttributeAccessor.cs
Runtime/Scripts/Cache/BufferCacheData.cs
2
100 Runtime/Plugins/GLTFSerialization/AttributeAccessor.cs
Runtime/Plugins/GLTFSerialization/Schema/Accessor.cs
2
100 Runtime/Plugins/GLTFSerialization/AttributeAccessor.cs
Runtime/Plugins/GLTFSerialization/GLTFHelpers.cs
2
100 Runtime/Plugins/GLTFSerialization/AttributeAccessor.cs
Runtime/Scripts/SceneImporter/ImporterSkinning.cs
1
100 Runtime/Plugins/GLTFSerialization/AttributeAccessor.cs
Runtime/Scripts/SceneImporter/ImporterMeshes.cs
2
100 Runtime/Plugins/GLTFSerialization/AttributeAccessor.cs
Runtime/Scripts/SceneImporter/ImporterAnimation.cs
1
100 Runtime/Plugins/GLTFSerialization/AttributeAccessor.cs
Runtime/Scripts/GLTFSceneImporter.cs
2
100 Runtime/Plugins/GLTFSerialization/AttributeAccessor.cs
Editor/Scripts/GLTFImporter.cs
1
100 Runtime/Scripts/SceneImporter/ImporterSkinning.cs
Runtime/Scripts/SceneImporter/ImporterTextures.cs
2
100 Runtime/Scripts/SceneImporter/ImporterSkinning.cs
Runtime/Scripts/SceneImporter/ImporterMeshes.cs
3
100 Runtime/Scripts/SceneImporter/ImporterSkinning.cs
Runtime/Scripts/SceneImporter/ImporterAnimation.cs
3
100 Runtime/Scripts/SceneImporter/ImporterSkinning.cs
Runtime/Scripts/GLTFSceneImporter.cs
3
100 Runtime/Plugins/GLTFSerialization/Utilities/StreamExtensions.cs
Runtime/Scripts/GLTFSceneImporter.cs
3
100 Runtime/Plugins/GLTFSerialization/Utilities/StreamExtensions.cs
Runtime/Scripts/GLTFSceneExporter.cs
3
100 Runtime/Plugins/GLTFSerialization/Utilities/StreamExtensions.cs
Runtime/Scripts/SceneImporter/ImporterMeshes.cs
3
100 Runtime/Plugins/GLTFSerialization/GLTFParser.cs
Runtime/Plugins/GLTFSerialization/GLBBuilder.cs
5
100 Runtime/Plugins/GLTFSerialization/GLTFParser.cs
Runtime/Scripts/GLTFSceneImporter.cs
5
100 Runtime/Plugins/GLTFSerialization/Utilities/StreamExtensions.cs
Runtime/Scripts/SceneExporter/ExporterAccessors.cs
3
100 Runtime/Plugins/GLTFSerialization/GLBObject.cs
Runtime/Plugins/GLTFSerialization/GLTFParser.cs
4
100 Runtime/Plugins/GLTFSerialization/GLBObject.cs
Runtime/Plugins/GLTFSerialization/GLBBuilder.cs
4
100 Runtime/Plugins/GLTFSerialization/Utilities/StreamExtensions.cs
Runtime/Plugins/GLTFSerialization/GLTFHelpers.cs
3
100 Runtime/Plugins/GLTFSerialization/Utilities/StreamExtensions.cs
Runtime/Plugins/GLTFSerialization/GLBBuilder.cs
3
100 Runtime/Plugins/GLTFSerialization/GLBObject.cs
Runtime/Scripts/GLTFSceneImporter.cs
4
100 Runtime/Plugins/GLTFSerialization/Utilities/StreamExtensions.cs
Runtime/Plugins/GLTFSerialization/GLTFParser.cs
3
90 Runtime/Plugins/GLTFSerialization/Schema/Accessor.cs
Runtime/Plugins/GLTFSerialization/GLTFHelpers.cs
2
90 Runtime/Plugins/GLTFSerialization/GLTFHelpers.cs
Runtime/Plugins/GLTFSerialization/Schema/Accessor.cs
2
90 Runtime/Plugins/GLTFSerialization/GLTFHelpers.cs
Runtime/Scripts/SceneImporter/ImporterMeshes.cs
3
83 Runtime/Plugins/GLTFSerialization/GLBBuilder.cs
Runtime/Plugins/GLTFSerialization/GLTFParser.cs
5
83 Runtime/Plugins/GLTFSerialization/GLBBuilder.cs
Runtime/Scripts/GLTFSceneImporter.cs
5
80 Runtime/Scripts/SceneImporter/ImporterSkinning.cs
Runtime/Plugins/GLTFSerialization/GLTFHelpers.cs
2
80 Runtime/Scripts/SceneImporter/ImporterSkinning.cs
Runtime/Scripts/Cache/BufferCacheData.cs
2
80 Runtime/Scripts/SceneImporter/ImporterSkinning.cs
Editor/Scripts/GLTFImporter.cs
2
80 Runtime/Plugins/GLTFSerialization/GLTFParser.cs
Runtime/Plugins/GLTFSerialization/GLBObject.cs
4
80 Runtime/Plugins/GLTFSerialization/GLTFParser.cs
Runtime/Scripts/SceneImporter/ImporterMeshes.cs
4
80 Runtime/Plugins/GLTFSerialization/GLTFParser.cs
Runtime/Scripts/GLTFSceneExporter.cs
4
75 Runtime/Scripts/Cache/BufferCacheData.cs
Editor/Scripts/GLTFImporter.cs
1
75 Runtime/Plugins/GLTFSerialization/GLBObject.cs
Runtime/Scripts/Cache/BufferCacheData.cs
3
75 Runtime/Plugins/GLTFSerialization/GLBObject.cs
Runtime/Scripts/SceneImporter/ImporterMeshes.cs
3
75 Runtime/Plugins/GLTFSerialization/GLBObject.cs
Runtime/Scripts/GLTFSceneExporter.cs
3
75 Runtime/Scripts/Cache/BufferCacheData.cs
Runtime/Plugins/GLTFSerialization/GLBBuilder.cs
3

Biggest files changes in pull request

Path View whole file Lines removed Lines added Final line count
Runtime/Plugins/GLTFSerialization/GLBBuilder.cs 0 0 535
Runtime/Plugins/GLTFSerialization/GLTFParser.cs 0 0 183
Runtime/Scripts/SceneExporter/ExporterAccessors.cs 0 0 1207
Runtime/Scripts/GLTFSceneExporter.cs 0 0 1484
Runtime/Plugins/GLTFSerialization/Schema/Accessor.cs 0 0 1519
Runtime/Scripts/GLTFSceneImporter.cs 0 0 1658
Runtime/Plugins/GLTFSerialization/GLBObject.cs 0 0 101
Runtime/Plugins/GLTFSerialization/Utilities/StreamExtensions.cs 0 0 65
Runtime/Scripts/SceneImporter/ImporterMeshes.cs 0 0 1595
Runtime/Plugins/GLTFSerialization/Utilities/JsonReaderExtensions.cs 0 0 12
Runtime/Scripts/SceneExporter/ExporterTextures.cs 0 0 864
Runtime/Plugins/GLTFSerialization/Schema/GLTFBuffer.cs 0 0 ---
Editor/Scripts/GLTFExportMenu.cs 0 0 691
Runtime/Plugins/GLTFSerialization/GLTFHelpers.cs 0 0 1048
Runtime/Scripts/SceneImporter/ImporterTextures.cs 0 0 925
Runtime/Scripts/Cache/BufferCacheData.cs 0 0 26
Runtime/Plugins/GLTFSerialization/Schema/BufferView.cs 0 0 ---
Runtime/Plugins/GLTFSerialization/AttributeAccessor.cs 0 0 19
Editor/Scripts/GLTFImporter.cs 0 0 1089
Runtime/Scripts/Timeline/GLTFRecorder.cs 0 0 471
Runtime/Plugins/GLTFSerialization/Schema/AccessorSparseValues.cs 0 0 ---
Runtime/Scripts/SceneImporter/ImporterAnimation.cs 0 0 638
Runtime/Scripts/SceneImporter/ImporterSkinning.cs 0 0 98
Runtime/Plugins/GLTFSerialization/Schema/AccessorSparseIndices.cs 0 0 ---
Runtime/Plugins/GLTFSerialization/Schema/AccessorSparse.cs 0 0 ---
Runtime/Scripts/SceneExporter/ExporterSkinning.cs 0 0 205
Runtime/Scripts/SceneImporter/MeshHashUtility.cs 0 0 376
Runtime/Scripts/GLTFSettings.cs 0 0 413

️ Biggest functions grown or shrunk by pull request

Which functions had their line count change as part of this pull request?

Could not find any functions changed by this pull request.