dont serialize a couple of empty arrays

This commit is contained in:
Selmar Kok 2020-01-28 13:45:38 +01:00
parent e2c3fe1c0b
commit eb9d29c06e

View File

@ -7003,6 +7003,7 @@ static void SerializeGltfTexture(Texture &texture, json &o) {
///
static void SerializeGltfModel(Model *model, json &o) {
// ACCESSORS
if (model->accessors.size()) {
json accessors;
JsonReserveArray(accessors, model->accessors.size());
for (unsigned int i = 0; i < model->accessors.size(); ++i) {
@ -7011,6 +7012,7 @@ static void SerializeGltfModel(Model *model, json &o) {
JsonPushBack(accessors, std::move(accessor));
}
JsonAddMember(o, "accessors", std::move(accessors));
}
// ANIMATIONS
if (model->animations.size()) {
@ -7033,6 +7035,7 @@ static void SerializeGltfModel(Model *model, json &o) {
JsonAddMember(o, "asset", std::move(asset));
// BUFFERVIEWS
if(model->bufferViews.size()) {
json bufferViews;
JsonReserveArray(bufferViews, model->bufferViews.size());
for (unsigned int i = 0; i < model->bufferViews.size(); ++i) {
@ -7041,6 +7044,7 @@ static void SerializeGltfModel(Model *model, json &o) {
JsonPushBack(bufferViews, std::move(bufferView));
}
JsonAddMember(o, "bufferViews", std::move(bufferViews));
}
// Extensions used
if (model->extensionsUsed.size()) {
@ -7304,8 +7308,8 @@ bool TinyGLTF::WriteGltfSceneToStream(Model *model, std::ostream &stream,
SerializeGltfModel(model, output);
// BUFFERS
std::vector<std::string> usedUris;
std::vector<unsigned char> binBuffer;
if(model->buffers.size()) {
json buffers;
JsonReserveArray(buffers, model->buffers.size());
for (unsigned int i = 0; i < model->buffers.size(); ++i) {
@ -7318,6 +7322,7 @@ bool TinyGLTF::WriteGltfSceneToStream(Model *model, std::ostream &stream,
JsonPushBack(buffers, std::move(buffer));
}
JsonAddMember(output, "buffers", std::move(buffers));
}
// IMAGES
if (model->images.size()) {
@ -7371,6 +7376,7 @@ bool TinyGLTF::WriteGltfSceneToFile(Model *model, const std::string &filename,
// BUFFERS
std::vector<std::string> usedUris;
std::vector<unsigned char> binBuffer;
if (model->buffers.size()) {
json buffers;
JsonReserveArray(buffers, model->buffers.size());
for (unsigned int i = 0; i < model->buffers.size(); ++i) {
@ -7409,6 +7415,7 @@ bool TinyGLTF::WriteGltfSceneToFile(Model *model, const std::string &filename,
JsonPushBack(buffers, std::move(buffer));
}
JsonAddMember(output, "buffers", std::move(buffers));
}
// IMAGES
if (model->images.size()) {