Add node & material index to gltf_asset

This commit is contained in:
Nikita Lisitsa 2023-02-13 21:46:59 +03:00
parent 5f63fb76f5
commit ab13864021
2 changed files with 9 additions and 0 deletions

View file

@ -82,6 +82,9 @@ namespace psemek::gfx
std::vector<accessor> accessors;
std::vector<buffer_view> buffer_views;
std::vector<buffer> buffers;
std::unordered_map<std::string, std::size_t> node_index;
std::unordered_map<std::string, std::size_t> material_index;
};
gltf_asset parse_gltf(io::istream && stream);

View file

@ -199,6 +199,12 @@ namespace psemek::gfx
target.uri = buffer["uri"].GetString();
}
for (std::size_t i = 0; i < result.nodes.size(); ++i)
result.node_index[result.nodes[i].name] = i;
for (std::size_t i = 0; i < result.materials.size(); ++i)
result.material_index[result.materials[i].name] = i;
return result;
}