mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2026-06-17 14:02:12 +00:00
44d6710991
* feat: initial T4 support * chore: adjust t4 symbols a bit for accuracy * chore: add PackIndex asset to T4 * chore: remove unused AssetXModelPieces * chore: add default and global asset pools loader for T4 * chore: use separate defines for T4 in ImageDumper * chore: remove unnecessary namespaces in gfximage_actions * chore: small things * chore: fix T4 PhysPreset type * chore: use proper XQuat2 type for T4 xanims * chore: fix errors on T4 types * chore: use iw3 like struct for XModelStreamInfo * docs: add basic docs for T4 * chore: add basic ObjCompiler setup for T4 * chore: adjust loaded sound definition * chore: make sure t4 material has the correct alignment * chore: make sure t4 uses similar names for assets as other games * fix: asset references should not be reusable * chore: add content writer for t4 * feat: add t4 localize loader * chore: reorder game ids to be alphabetically ordered --------- Co-authored-by: Jan Laupetin <jan@laupetin.net>
30 lines
833 B
C++
30 lines
833 B
C++
#include "IObjLoader.h"
|
|
|
|
#include "Game/IW3/ObjLoaderIW3.h"
|
|
#include "Game/IW4/ObjLoaderIW4.h"
|
|
#include "Game/IW5/ObjLoaderIW5.h"
|
|
#include "Game/T4/ObjLoaderT4.h"
|
|
#include "Game/T5/ObjLoaderT5.h"
|
|
#include "Game/T6/ObjLoaderT6.h"
|
|
|
|
#include <cassert>
|
|
|
|
const IObjLoader* IObjLoader::GetObjLoaderForGame(GameId game)
|
|
{
|
|
static const IObjLoader* zoneCreators[]{
|
|
new IW3::ObjLoader(),
|
|
new IW4::ObjLoader(),
|
|
new IW5::ObjLoader(),
|
|
new T4::ObjLoader(),
|
|
new T5::ObjLoader(),
|
|
new T6::ObjLoader(),
|
|
};
|
|
static_assert(std::extent_v<decltype(zoneCreators)> == static_cast<unsigned>(GameId::COUNT));
|
|
|
|
assert(static_cast<unsigned>(game) < static_cast<unsigned>(GameId::COUNT));
|
|
const auto* result = zoneCreators[static_cast<unsigned>(game)];
|
|
assert(result);
|
|
|
|
return result;
|
|
}
|