mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-04-17 17:43:52 +00:00
Fix NPC apparel fallback and reduce world-entry stutter
Hide NPC cloak/object-skin mesh when no cape texture resolves by using a transparent texture fallback, preventing skin-texture bleed on cloaks. Tighten NPC equipment region compositing by slot and add safe humanoid geoset selection to avoid robe-over-pants conflicts and odd pants texturing. Reduce login/runtime hitching by deferring non-critical world-system initialization across frames, lowering per-frame transport doodad spawn budget, and demoting high-volume transport/MO_TRANSPORT diagnostics to debug. Gate M2 glow diagnostics behind WOWEE_M2_GLOW_DIAG and make zone music prewarm opt-in via WOWEE_PREWARM_ZONE_MUSIC.
This commit is contained in:
parent
48d9de810d
commit
3368dbb9ec
10 changed files with 369 additions and 91 deletions
|
|
@ -215,9 +215,18 @@ std::shared_ptr<DBCFile> AssetManager::loadDBC(const std::string& name) {
|
|||
|
||||
std::vector<uint8_t> dbcData;
|
||||
|
||||
// Some visual DBC CSV exports are known to be malformed in community datasets
|
||||
// (string columns shifted, missing numeric ID field). Force binary MPQ data for
|
||||
// these tables to keep model/texture mappings correct.
|
||||
const bool forceBinaryForVisualDbc =
|
||||
(name == "CreatureDisplayInfo.dbc" ||
|
||||
name == "CreatureDisplayInfoExtra.dbc" ||
|
||||
name == "ItemDisplayInfo.dbc" ||
|
||||
name == "CreatureModelData.dbc");
|
||||
|
||||
// Try expansion-specific CSV first (e.g. Data/expansions/wotlk/db/Spell.csv)
|
||||
bool loadedFromCSV = false;
|
||||
if (!expansionDataPath_.empty()) {
|
||||
if (!forceBinaryForVisualDbc && !expansionDataPath_.empty()) {
|
||||
// Derive CSV name from DBC name: "Spell.dbc" -> "Spell.csv"
|
||||
std::string baseName = name;
|
||||
auto dot = baseName.rfind('.');
|
||||
|
|
@ -239,6 +248,9 @@ std::shared_ptr<DBCFile> AssetManager::loadDBC(const std::string& name) {
|
|||
}
|
||||
}
|
||||
}
|
||||
if (forceBinaryForVisualDbc && !expansionDataPath_.empty()) {
|
||||
LOG_INFO("Skipping CSV override for visual DBC, using binary: ", name);
|
||||
}
|
||||
|
||||
// Fall back to manifest (binary DBC from extracted MPQs)
|
||||
if (dbcData.empty()) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue