Merge pull request #50 from msfeldstein/master

Pass camera reference through propertly as index uints, not as (glTF 1.0 era) name strings.
This commit is contained in:
Pär Winzell 2017-12-04 22:18:49 -08:00 committed by GitHub
commit 13367dfc66
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 8 deletions

View File

@ -1134,7 +1134,7 @@ ModelData *Raw2Gltf(
fmt::printf("Warning: Camera node name %s does not exist.\n", cam.nodeName);
continue;
}
iter->second->AddCamera(cam.name);
iter->second->SetCamera(camera.ix);
}
}

View File

@ -20,7 +20,7 @@ NodeData::NodeData(
scale(scale),
children(),
mesh(-1),
cameraName(""),
camera(-1),
skin(-1)
{
}
@ -44,10 +44,10 @@ void NodeData::SetSkin(uint32_t skinIx)
skin = skinIx;
}
void NodeData::AddCamera(std::string camera)
void NodeData::SetCamera(uint32_t cameraIndex)
{
assert(!isJoint);
cameraName = std::move(camera);
camera = cameraIndex;
}
json NodeData::serialize() const
@ -75,8 +75,8 @@ json NodeData::serialize() const
if (skin >= 0) {
result["skin"] = skin;
}
if (!cameraName.empty()) {
result["camera"] = cameraName;
if (camera >= 0) {
result["camera"] = camera;
}
}
return result;

View File

@ -19,7 +19,7 @@ struct NodeData : Holdable
void AddChildNode(uint32_t childIx);
void SetMesh(uint32_t meshIx);
void SetSkin(uint32_t skinIx);
void AddCamera(std::string camera);
void SetCamera(uint32_t camera);
json serialize() const override;
@ -30,7 +30,7 @@ struct NodeData : Holdable
Vec3f scale;
std::vector<uint32_t> children;
int32_t mesh;
std::string cameraName;
int32_t camera;
int32_t skin;
std::vector<std::string> skeletons;
};