Syntax changes, removed rotation in usd file format

This commit is contained in:
Vladyslav Baranovskyi
2024-11-29 12:20:29 +02:00
parent 7a214397a1
commit 0a38791bee
3 changed files with 29 additions and 20 deletions

View File

@@ -29,31 +29,41 @@ map_Kd texture.png
if (materialName.size() != 0)
{
objContent << "mtllib material.mtl\n";
objContent << "usemtl " << materialName << "\n";
std::string_view content = "mtllib material.mtl\n";
objContent.write(content.data(), content.size());
content = "usemtl ";
objContent.write(content.data(), content.size());
objContent.write(materialName.data(), materialName.size());
objContent.write("\n", 1);
}
for (int i = 0; i < geometry->vertexCount; ++i)
{
const auto& v = geometry->vertices[i];
objContent << fmt::format("v {} {} {}\n", v.position.x, v.position.y, v.position.z);
const std::string content = fmt::format("v {} {} {}\n", v.position.x, v.position.y, v.position.z);
objContent.write(content.data(), content.size());
}
for (int i = 0; i < geometry->vertexCount; ++i)
{
const auto& v = geometry->vertices[i];
objContent << fmt::format("vn {} {} {}\n", v.normal.x, v.normal.y, v.normal.z);
const std::string content = fmt::format("vn {} {} {}\n", v.normal.x, v.normal.y, v.normal.z);
objContent.write(content.data(), content.size());
}
for (int i = 0; i < geometry->vertexCount; ++i)
{
const auto& v = geometry->vertices[i];
objContent << fmt::format("vt {} {}\n", v.textureCoordinates.x, v.textureCoordinates.y);
const std::string content = fmt::format("vt {} {}\n", v.textureCoordinates.x, v.textureCoordinates.y);
objContent.write(content.data(), content.size());
}
for (int i = 0; i < geometry->indexCount; i += 3)
{
uint32_t i0 = geometry->GetIndex(i + 0) + 1;
uint32_t i1 = geometry->GetIndex(i + 1) + 1;
uint32_t i2 = geometry->GetIndex(i + 2) + 1;
objContent << fmt::format("f {0}/{0}/{0} {1}/{1}/{1} {2}/{2}/{2}\n", i0, i1, i2);
const std::string content = fmt::format("f {0}/{0}/{0} {1}/{1}/{1} {2}/{2}/{2}\n", i0, i1, i2);
objContent.write(content.data(), content.size());
}
}
}