From c1b45611a258538647f515693ad62fe2b38be9f9 Mon Sep 17 00:00:00 2001 From: Joshua Goins Date: Sat, 27 Apr 2024 18:17:37 -0400 Subject: [PATCH] Decode material parameter names --- parts/mtrl/knownvalues.h | 17 ++++++++++++++++- parts/mtrl/mtrlpart.cpp | 7 ++++++- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/parts/mtrl/knownvalues.h b/parts/mtrl/knownvalues.h index 47cb516..fa00dad 100644 --- a/parts/mtrl/knownvalues.h +++ b/parts/mtrl/knownvalues.h @@ -318,4 +318,19 @@ const QHash keys = { {0xC8BD1DEF, "Specular Map Mode"}, {0x198D11CD, "Color"}, - {0xA02F4828, "Multi"}}; + {0xA02F4828, "Multi"}, + + {physis_shpk_crc("g_DiffuseColor"), "g_DiffuseColor"}, + {physis_shpk_crc("g_AlphaThreshold"), "g_AlphaThreshold"}, + {physis_shpk_crc("g_FresnelValue0"), "g_FresnelValue0"}, + {physis_shpk_crc("g_SpecularMask"), "g_SpecularMask"}, + {physis_shpk_crc("g_LipFresnelValue0"), "g_LipFresnelValue0"}, + {physis_shpk_crc("g_Shininess"), "g_Shininess"}, + {physis_shpk_crc("g_EmissiveColor"), "g_EmissiveColor"}, + {physis_shpk_crc("g_LipShininess"), "g_LipShininess"}, + {physis_shpk_crc("g_TileScale"), "g_TileScale"}, + {physis_shpk_crc("g_AmbientOcclusionMask"), "g_AmbientOcclusionMask"}, + {physis_shpk_crc("g_TileIndex"), "g_TileIndex"}, + {physis_shpk_crc("g_AmbientOcclusionMask"), "g_AmbientOcclusionMask"}, + {physis_shpk_crc("g_ScatteringLevel"), "g_ScatteringLevel"}, + {physis_shpk_crc("g_NormalScale"), "g_NormalScale"}}; diff --git a/parts/mtrl/mtrlpart.cpp b/parts/mtrl/mtrlpart.cpp index 8cf4750..86d7f6e 100644 --- a/parts/mtrl/mtrlpart.cpp +++ b/parts/mtrl/mtrlpart.cpp @@ -210,7 +210,12 @@ void MtrlPart::rebuild() for (int i = 0; i < m_material.num_constants; i++) { const auto constant = m_material.constants[i]; - auto groupBox = new QGroupBox(QString::number(constant.id)); + QString name = i18n("Unknown %1", QString::number(constant.id)); + if (keys.contains(constant.id)) { + name = QString::fromLatin1(keys[constant.id]); + } + + auto groupBox = new QGroupBox(name); m_constantsLayout->addWidget(groupBox); auto layout = new QFormLayout();