Asset Loader
The asset loading library currently supports GLTF 2.0 format.
GLTF 2.0
GLTF loader uses tiny gltf library and is based on Vulkan-glTF-PBR project by Sascha Willems.
The loader supports most of the major GLTF2.0 features:
- [x] ASCII, Binary, and Embedded GLTF specifications
- [x] PBR Materials (Metallic-Roughness and Specular-Glossiness workflows)
- [x] Animations (skinned and articulated)
Note that the loader does not implement all aspects of the standard.
The loading functionality is implemented in Diligent::GLTF::Model
class
that initializes all Diligent Engine objects required to render the model.
std::unique_ptr<GLTF::Model> Model;
Model.reset(new GLTF::Model(pDevice, pImmediateContext, "models/DamagedHelmet/DamagedHelmet.gltf"));
The loader does have any rendering capabilities. Please see Diligent GLTF PBR Renderer.
References
History of
AssetLoader
@gltf-c-api
git clone https://git.s-ol.nu/forks/DiligentTools.git
- Give access to individual node transforms s-ol 2 years ago
- implement loading GLTF files from memory s-ol 2 years ago
- C API for GLTFLoader s-ol 2 years ago
- GLTF Loader: fixed default alpha channel value of 3-component textures assiduous 2 years ago
- Fix misc. typos luz paz 2 years ago
- Fixed gcc/clang error assiduous 2 years ago
- GLTF Loader: made Model::GPUDataInitialized atomic assiduous 2 years ago
- GLTF Loader: moved AlphaMode parameter to Material::ShaderAttribs assiduous 2 years ago
- GLTFLoder: added BaseColorAlphaFormat to ResourceCacheUseInfo; added Model::IsGPUDataInitialized() assiduous 2 years ago
- Few minor updates to GLTF loader assiduous 2 years ago
- GLTF loader: reworked loading of checker board stub texture assiduous 2 years ago
- GLTF loader: reworked buffer initialization with user data assiduous 2 years ago
- GLTF loader: reworked initial texture data to be stored as user data in the texture/allocation to make sure that GPU data is always initialized before the first use assiduous 2 years ago
- Minor fix in GLTF resource manager assiduous 2 years ago
- Fixed clang/gcc build error assiduous 2 years ago
- GLTF Loader: added camera loading assiduous 2 years ago
- Updated copyright notice assiduous 2 years ago
- GLTFLoader: added convenience constructor for Model::CreateInfo assiduous 2 years ago
- GLTF resource manager: fixed issue with allocation cache not being protected by mutex assiduous 2 years ago
- GLTFLoader: added option to not load animation data and skin assiduous 2 years ago
- GLTFLoader: updated node transforms handling assiduous 2 years ago
- GLTF Loader: added assiduous 2 years ago
- GLTFLoader: updated model initialization API; few minor improvements to loading assiduous 2 years ago
- Fixed clang build errors assiduous 2 years ago
- GLTFLoader: fixed variable type/name conflicts assiduous 2 years ago
- GLTFLoader: made sure that texture files are not loaded when found in the cache assiduous 2 years ago
- Reworked GLTF resource manager to use BufferSuballocator and DynamicTextureAtlas assiduous 2 years ago
- GLTF Loader: enabled caching compressed textures assiduous 2 years ago
- GLTF Resource manager: implemented texture array resizing assiduous 2 years ago
- GLTF Loader: fixed names of Material::ALPHA_MODE enum members assiduous 2 years ago