mirror of
https://github.com/overte-org/overte.git
synced 2025-08-09 03:17:02 +02:00
support selecting material in json by name with ?
This commit is contained in:
parent
75a246b82d
commit
7b0854c121
1 changed files with 17 additions and 1 deletions
|
@ -1555,7 +1555,23 @@ void Model::applyMaterialMapping() {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
render::Transaction transaction;
|
render::Transaction transaction;
|
||||||
auto networkMaterial = networkMaterialResource->parsedMaterials.networkMaterials[networkMaterialResource->parsedMaterials.names[0]];
|
std::shared_ptr<NetworkMaterial> networkMaterial;
|
||||||
|
{
|
||||||
|
QString url = networkMaterialResource->getURL().toString();
|
||||||
|
bool foundMaterialName = false;
|
||||||
|
if (url.contains("?")) {
|
||||||
|
auto split = url.split("?");
|
||||||
|
std::string materialName = split.last().toStdString();
|
||||||
|
auto networkMaterialIter = networkMaterialResource->parsedMaterials.networkMaterials.find(materialName);
|
||||||
|
if (networkMaterialIter != networkMaterialResource->parsedMaterials.networkMaterials.end()) {
|
||||||
|
networkMaterial = networkMaterialIter->second;
|
||||||
|
foundMaterialName = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!foundMaterialName) {
|
||||||
|
networkMaterial = networkMaterialResource->parsedMaterials.networkMaterials[networkMaterialResource->parsedMaterials.names[0]];
|
||||||
|
}
|
||||||
|
}
|
||||||
for (auto shapeID : shapeIDs) {
|
for (auto shapeID : shapeIDs) {
|
||||||
if (shapeID < _modelMeshRenderItemIDs.size()) {
|
if (shapeID < _modelMeshRenderItemIDs.size()) {
|
||||||
auto itemID = _modelMeshRenderItemIDs[shapeID];
|
auto itemID = _modelMeshRenderItemIDs[shapeID];
|
||||||
|
|
Loading…
Reference in a new issue