From c7c0f89a5f97f0c472b5e0bc4ba5beec1e65d2b1 Mon Sep 17 00:00:00 2001 From: Tzu-Mao Li Date: Thu, 19 Jul 2018 10:04:21 -0700 Subject: [PATCH] Ignore comments when loading MTL --- include/core-mesh/material.h | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/include/core-mesh/material.h b/include/core-mesh/material.h index 5078740..d4f0a06 100644 --- a/include/core-mesh/material.h +++ b/include/core-mesh/material.h @@ -56,7 +56,7 @@ class Material { std::string token; ss >> token; - if (token == "newmtl") { + if (token == "newmtl") { if (!found) { found = true; } else { @@ -82,12 +82,10 @@ class Material { ss >> activeMaterial.m_TextureFilename_Ks; } else if (token == "map_Ke") { ss >> activeMaterial.m_TextureFilename_Ke; - } - else if (token == "d") { - // d token not implemented + } else if (token == "d") { + // d token not implemented //MLIB_WARNING("d token not implemented"); - } - else if (token != "") { + } else if (token != "" || (token.size() > 0 && token[0] == '#')) { MLIB_WARNING("unknown token: " + line); } } @@ -168,22 +166,22 @@ typedef Material Materiald; template inline BinaryDataStream& operator<< (BinaryDataStream& s, const Material &m) { - s << m.m_name << m.m_ambient << m.m_diffuse << m.m_specular << m.m_shiny << m.m_emission; - s << m.m_TextureFilename_Ka; - s << m.m_TextureFilename_Kd; - s << m.m_TextureFilename_Ks; + s << m.m_name << m.m_ambient << m.m_diffuse << m.m_specular << m.m_shiny << m.m_emission; + s << m.m_TextureFilename_Ka; + s << m.m_TextureFilename_Kd; + s << m.m_TextureFilename_Ks; s << m.m_TextureFilename_Ke; - return s; + return s; } template inline BinaryDataStream& operator>> (BinaryDataStream& s, Material &m) { - s >> m.m_name >> m.m_ambient >> m.m_diffuse >> m.m_specular >> m.m_shiny >> m.m_emission; - s >> m.m_TextureFilename_Ka; - s >> m.m_TextureFilename_Kd; - s >> m.m_TextureFilename_Ks; + s >> m.m_name >> m.m_ambient >> m.m_diffuse >> m.m_specular >> m.m_shiny >> m.m_emission; + s >> m.m_TextureFilename_Ka; + s >> m.m_TextureFilename_Kd; + s >> m.m_TextureFilename_Ks; s >> m.m_TextureFilename_Ke; - return s; + return s; } }