From c2303489e81fb2c4d496822d9856e7665fefd45e Mon Sep 17 00:00:00 2001 From: inspectredc Date: Mon, 1 Apr 2024 02:47:17 +0100 Subject: better formatting for structs --- src/factories/GenericArrayFactory.cpp | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/factories/GenericArrayFactory.cpp b/src/factories/GenericArrayFactory.cpp index e1c5149..e5d6e0f 100644 --- a/src/factories/GenericArrayFactory.cpp +++ b/src/factories/GenericArrayFactory.cpp @@ -47,6 +47,24 @@ std::unordered_map typeSizeMap = { { ArrayType::Vec4s, 8 }, }; +std::unordered_map structCountMap = { + { ArrayType::u8, 1 }, + { ArrayType::s8, 1 }, + { ArrayType::u16, 1 }, + { ArrayType::s16, 1 }, + { ArrayType::u32, 1 }, + { ArrayType::s32, 1 }, + { ArrayType::u64, 1 }, + { ArrayType::f32, 1 }, + { ArrayType::f64, 1 }, + { ArrayType::Vec2f, 2 }, + { ArrayType::Vec3f, 3 }, + { ArrayType::Vec3s, 3 }, + { ArrayType::Vec3i, 3 }, + { ArrayType::Vec4f, 4 }, + { ArrayType::Vec4s, 4 }, +}; + static int GetPrecision(float f) { int p = 0; int shift = 1; @@ -161,7 +179,7 @@ ExportResult ArrayCodeExporter::Export(std::ostream &write, std::shared_ptrmMaxWidth + 8); + int columnCount = 120 / (structCountMap.at(arrayType) * array->mMaxWidth + 8); int i = 0; for (auto &datum : array->mData) { if ((i++ % columnCount) == 0) { -- cgit v1.2.3