metaforce/DataSpec/DNACommon/ANCS.hpp

37 lines
1.0 KiB
C++
Raw Normal View History

2018-10-07 03:42:33 +00:00
#pragma once
2015-08-11 23:32:02 +00:00
2015-08-13 07:29:00 +00:00
#include <unordered_set>
2015-08-11 23:32:02 +00:00
#include "DNACommon.hpp"
#include "CMDL.hpp"
2016-04-07 03:40:25 +00:00
#include "RigInverter.hpp"
2015-08-11 23:32:02 +00:00
2018-12-08 05:30:43 +00:00
namespace DataSpec::DNAANCS {
2015-08-11 23:32:02 +00:00
2017-12-29 08:08:12 +00:00
using Actor = hecl::blender::Actor;
using Armature = hecl::blender::Armature;
using Action = hecl::blender::Action;
2015-10-23 00:45:26 +00:00
2015-08-11 23:32:02 +00:00
template <typename IDTYPE>
2018-12-08 05:30:43 +00:00
struct CharacterResInfo {
std::string name;
IDTYPE cmdl;
IDTYPE cskr;
IDTYPE cinf;
std::vector<std::pair<std::string, std::pair<IDTYPE, IDTYPE>>> overlays;
2015-08-11 23:32:02 +00:00
};
template <typename IDTYPE>
2018-12-08 05:30:43 +00:00
struct AnimationResInfo {
std::string name;
IDTYPE animId;
IDTYPE evntId;
bool additive;
};
2015-09-26 03:12:08 +00:00
template <class PAKRouter, class ANCSDNA, class MaterialSet, class SurfaceHeader, atUint32 CMDLVersion>
2018-12-08 05:30:43 +00:00
bool ReadANCSToBlender(hecl::blender::Connection& conn, const ANCSDNA& ancs, const hecl::ProjectPath& outPath,
PAKRouter& pakRouter, const typename PAKRouter::EntryType& entry, const SpecBase& dataspec,
std::function<void(const hecl::SystemChar*)> fileChanged, bool force = false);
2015-08-11 23:32:02 +00:00
2018-12-08 05:30:43 +00:00
} // namespace DataSpec::DNAANCS