mirror of
https://github.com/bevyengine/bevy
synced 2024-12-12 06:12:30 +00:00
d74533b407
# Objective The objective is to be able to load data from "application-specific" (see glTF spec 3.7.2.1.) vertex attribute semantics from glTF files into Bevy meshes. ## Solution Rather than probe the glTF for the specific attributes supported by Bevy, this PR changes the loader to iterate through all the attributes and map them onto `MeshVertexAttribute`s. This mapping includes all the previously supported attributes, plus it is now possible to add mappings using the `add_custom_vertex_attribute()` method on `GltfPlugin`. ## Changelog - Add support for loading custom vertex attributes from glTF files. - Add the `custom_gltf_vertex_attribute.rs` example to illustrate loading custom vertex attributes. ## Migration Guide - If you were instantiating `GltfPlugin` using the unit-like struct syntax, you must instead use `GltfPlugin::default()` as the type is no longer unit-like.
1.6 KiB
1.6 KiB
Bevy Credits
Adapted Code
- hecs
- legion_transform
- wgpu-rs examples
- yaks: ArchetypeSet, borrowed some ideas from their scheduler implementation
Inspiration
- game engines: amethyst, coffee
- ecs: legion, shipyard, yaks
Assets
- Generic RPG Pack (CC0 license) by Bakudas and Gabe Fern
- Environment maps (
.hdr
files) from HDRIHaven (CC0 license) - Alien from Kenney's Space Kit (CC0 1.0 Universal)
- Cake from Kenney's Food Kit (CC0 1.0 Universal)
- Ground tile from Kenney's Tower Defense Kit (CC0 1.0 Universal)
- Game icons from Kenney's Game Icons (CC0 1.0 Universal)
- Space ships from Kenny's Simple Space Kit (CC0 1.0 Universal)
- glTF animated fox from glTF Sample Models
- Low poly fox by PixelMannen (CC0 1.0 Universal)
- Rigging and animation by @tomkranis on Sketchfab (CC-BY 4.0)
- FiraMono by The Mozilla Foundation and Telefonica S.A (SIL Open Font License, Version 1.1: assets/fonts/FiraMono-LICENSE)
- Barycentric from mk_bary_gltf (MIT OR Apache-2.0)