diff --git a/code/OgreMaterial.cpp b/code/OgreMaterial.cpp index 014e60069..e7f256000 100644 --- a/code/OgreMaterial.cpp +++ b/code/OgreMaterial.cpp @@ -282,6 +282,9 @@ aiMaterial* OgreImporter::LoadMaterial(const std::string MaterialName) const void OgreImporter::ReadTechnique(stringstream &ss, aiMaterial* NewMaterial) { + string RestOfLine; + getline(ss, RestOfLine);//ignore the rest of the line + string Line; ss >> Line; if(Line!="{") @@ -294,6 +297,8 @@ void OgreImporter::ReadTechnique(stringstream &ss, aiMaterial* NewMaterial) ss >> Line; if(Line=="pass") { + getline(ss, RestOfLine);//ignore the rest of the line + ss >> Line; if(Line!="{") { diff --git a/code/OgreMesh.cpp b/code/OgreMesh.cpp index 6c10a5462..6cf563fc2 100644 --- a/code/OgreMesh.cpp +++ b/code/OgreMesh.cpp @@ -163,6 +163,14 @@ void OgreImporter::ReadSubMesh(SubMesh &theSubMesh, XmlReader *Reader) we just use a reference to a submodel instead of our submodel itself*/ SubMesh& VertexSource= bSharedData ? m_SharedGeometry : theSubMesh; + if(bSharedData)//copy vertexinformations to our mesh: + { + theSubMesh.HasPositions=m_SharedGeometry.HasPositions; + theSubMesh.HasNormals=m_SharedGeometry.HasNormals; + theSubMesh.HasTangents=m_SharedGeometry.HasTangents; + theSubMesh.NumUvs=m_SharedGeometry.NumUvs; + } + if(VertexSource.NumUvs > 0) {