#pragma once #include #include "Dumping/AbstractAssetDumper.h" #include "Game/IW4/IW4.h" namespace IW4 { class AssetDumperXModel final : public AbstractAssetDumper { static void DumpObjLod(AssetDumpingContext& context, XAssetInfo* asset, unsigned lod); static void DumpObjMatMaterial(AssetDumpingContext& context, const Material* material, std::ostream& stream); static void DumpObjMat(AssetDumpingContext& context, XAssetInfo* asset); static void DumpObj(AssetDumpingContext& context, XAssetInfo* asset); static void DumpXModelExportLod(AssetDumpingContext& context, XAssetInfo* asset, unsigned lod); static void DumpXModelExport(AssetDumpingContext& context, XAssetInfo* asset); protected: bool ShouldDump(XAssetInfo* asset) override; void DumpAsset(AssetDumpingContext& context, XAssetInfo* asset) override; }; }