diff --git a/GeneralsMD/Code/Tools/WorldBuilder/src/wbview3d.cpp b/GeneralsMD/Code/Tools/WorldBuilder/src/wbview3d.cpp index 6bdee1e0e3f..1cc45d20804 100644 --- a/GeneralsMD/Code/Tools/WorldBuilder/src/wbview3d.cpp +++ b/GeneralsMD/Code/Tools/WorldBuilder/src/wbview3d.cpp @@ -29,6 +29,7 @@ #include "intersec.h" #include "W3DDevice/GameClient/W3DAssetManager.h" #include "W3DDevice/GameClient/Module/W3DModelDraw.h" +#include "W3DDevice/GameClient/Module/W3DTreeDraw.h" #include "agg_def.h" #include "part_ldr.h" #include "hanim.h" @@ -1118,6 +1119,15 @@ AsciiString WbView3d::getBestModelName(const ThingTemplate* tt, const ModelCondi { return md->getBestModelNameForWB(c); } + + // TheSuperHackers @bugfix ViTeXFTW 15/02/2025 Fix tree objects not showing + // a preview in WB object placer. The W3DTreeDraw module stores its model name + // differently from W3DModelDraw. + const W3DTreeDrawModuleData* treeData = mdd ? mdd->getAsW3DTreeDrawModuleData() : nullptr; + if (treeData) + { + return treeData->m_modelName; + } } } // removing this crash as sounds can (and should) have no model - jkmcd