37a54981b8
* Update glTF.CPP to 1.5.19 Update driectxtex to 2018.6.1.2 * lower case Document * Updates for future 1809 (rs5). Add abilibty to apply Draco mesh compression. Modify SerializeBinary to allow for BufferView's that we don't understand natively. * Switch to use a new NuGet package for Draco consumption * Add a Specular Glossiness to Metallic Roughness conversion step to workflows. Refactored texture loading and packing utils into generic textures utils. Resolved packing, resizing and compressing texture issues with sRGB and alpha channels. Update draco build to allow for ARM. * small fixes * Update README with latest features. Switch draco compression to an option; it makes loading slower. * Tweek the mesh compression options and language. * Found and fixed a couple of issues with mesh compression. |
||
---|---|---|
WindowsMRAssetConverter | ||
glTF-Toolkit | ||
glTF-Toolkit.Test | ||
glTF-Toolkit.UWP | ||
glTF-Toolkit.UWP.Test | ||
.gitignore | ||
CODE_OF_CONDUCT.md | ||
LICENSE | ||
README.md | ||
glTF-Toolkit.sln |
README.md
Microsoft glTF Toolkit
This project contains a collection of tools and libraries to modify and optimize glTF assets.
Additionally the repository includes a command line tool that uses these steps in sequence in order to convert a glTF 2.0 core asset for use in the Windows Mixed Reality home, following the published documentation. The latest release of the Windows Mixed Reality Asset converter is available on the releases tab.
Features
The current release includes code for:
- Packing PBR material textures using DirectXTex for use with the MSFT_packing_occlusionRoughnessMetallic and MSFT_packing_normalRoughnessMetallic extensions.
- Compressing textures as BC3, BC5 or BC7 and generate mip maps using DirectXTex for use with the MSFT_texture_dds extension.
- Removing KHR_materials_pbrSpecularGlossiness by converting material prameters to metallic-roughness.
- Mesh compression using KHR_draco_mesh_compression extension; this can only be used on 1809 and later and should only be used for assets that are transmitted over the network as load time is increased with compression.
- Merging multiple glTF assets into a asset with multiple levels of detail using the MSFT_lod extension.
- A command line tool that combines these components to create optimized glTF assets for the Windows Mixed Reality Home
- A UWP compatible Windows Runtime component to perform conversions between GLTF and GLB, as well as optimize assets for Windows Mixed Reality at runtime
Dependencies
This project consumes the following projects through NuGet packages:
- Microsoft.glTF.CPP, licensed under the MIT license
- DirectXTex, licensed under the MIT license
- RapidJSON, licensed under the MIT license
- Draco, licensed under Apache License 2.0
Building
This project can be built using Visual Studio 2017 Update 4 on Windows 10 Fall Creators Update (16299.0).
Contributing
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.
When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
License
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the MIT License.