MIT License

项目介绍

spnda/fastgltf 是一个托管在 GitHub 上的开源项目,主要使用 C++ 编写,采用 MIT License 许可证,目前获得 621 个 Star、97 次 Fork。

仓库全名
spnda/fastgltf
开源许可证
MIT License
Star 数
621
Fork 数
97
未关闭 Issue
9

README 摘要

fastgltf fastgltf is a speed and usability focused glTF 2.0 library written in modern C++20 with minimal dependencies. It uses SIMD in various areas to decrease the time the application spends parsing and loading glTF data. By taking advantage of modern C++20 it also provides easy and safe access to the properties and data. It is also available as a C++20 named module. The library supports the entirety of glTF 2.0…

完整内容见 GitHub 原始 README 或本页 。

常见问题

fastgltf 用什么语言开发?

主要使用 C++ 编写,采用 MIT License 许可证,目前有 621 个 Star。

fastgltf 可以免费商用吗?

仓库采用 MIT License 许可证,可免费使用与修改,商业使用请遵守许可证条款(例如保留版权声明与许可声明)。

如何获取 fastgltf 的源码?

可以直接克隆仓库:git clone https://github.com/spnda/fastgltf.git,默认分支为 main;安装与运行步骤见仓库 README。

fastgltf 最近还在维护吗?

仓库最近一次更新为 17 小时前,当前有 9 个未关闭 Issue;Star 数为 621,可作为社区活跃度的参考。

关于

GitHub 原始描述(英文)

A modern C++17 glTF 2.0 library focused on speed, correctness, and usability

描述取自 GitHub 官方 API,保持仓库作者书写的原文。

语言占比

C++
CMake
Rust

Release

README

fastgltf

vcpkg conan center CI_x64 workflow status CI_arm workflow status CI_macOS workflow status CI_sanitizers workflow status CI_modules workflow status Documentation Status

fastgltf is a speed and usability focused glTF 2.0 library written in modern C++20 with minimal dependencies. It uses SIMD in various areas to decrease the time the application spends parsing and loading glTF data. By taking advantage of modern C++20 it also provides easy and safe access to the properties and data. It is also available as a C++20 named module.

The library supports the entirety of glTF 2.0 specification, including many extensions. By default, fastgltf will only do the absolute minimum to work with a glTF model. However, it brings many additional features to ease working with the data, including accessor tools, the ability to directly write to mapped GPU buffers, and decomposing transform matrices.

To learn more about fastgltf, its features, performance and API you can read the docs.

Note 注意

For C++17 compatibility, please use v0.9.x. Later versions require C++20.

Important 重要

Always use a released version, either through vcpkg or Conan or by checking out a tagged release. The main branch is under active development and may contain broken or incomplete changes.

Examples and real-world usage

The examples/ directory contains some small demos showing how to integrate fastgltf into a 3D renderer. Below is a curated list of notable projects that make use of fastgltf:

  • Fwog: The examples of this modern OpenGL 4.6 abstraction make use of fastgltf.
  • wad2gltf: A WAD to glTF converter showcasing fastgltf’s exporting functionalities
  • Castor3D: A multi-OS 3D engine
  • Raz: A modern & multiplatform 3D game engine in C++17
  • vkguide: A modern Vulkan tutorial
  • lvgl: Embedded graphics library for any MCU, MPU and display type
  • OptiX_Apps: Official NVIDIA samples for the NVIDIA OptiX Ray Tracing SDK
  • vk-gltf-viewer: A high performance and highly featured glTF renderer made with Vulkan
  • Timberdoodle: A research-focused 3D rendering engine made with Vulkan

If you have a project that uses fastgltf and think it would be a great reference or inspiration for others, feel free to send me a private message or open a pull request to add it to the list. The list is meant to highlight notable or widely useful projects, so please consider doing this if your project might serve as a solid example or resource for the community.

License

The fastgltf library is licensed under the MIT License.


Libraries embedded in fastgltf:

Libraries used in examples and tests:

  • Catch2: Licensed under BSL-1.0.
  • glad: Licensed under MIT.
  • glfw: Licensed under Zlib.
  • glm: Licensed under MIT.

评论

暂无评论