|
|
@ -0,0 +1,46 @@ |
|
|
|
|
|
// Copyright 2019 yuzu emulator team
|
|
|
|
|
|
// Licensed under GPLv2 or any later version
|
|
|
|
|
|
// Refer to the license.txt file included.
|
|
|
|
|
|
|
|
|
|
|
|
#include "core/file_sys/system_archive/mii_model.h"
|
|
|
|
|
|
#include "core/file_sys/vfs_vector.h"
|
|
|
|
|
|
|
|
|
|
|
|
namespace FileSys::SystemArchive { |
|
|
|
|
|
|
|
|
|
|
|
namespace MiiModelData { |
|
|
|
|
|
|
|
|
|
|
|
constexpr std::array<u8, 0x10> NFTR_STANDARD{'N', 'F', 'T', 'R', 0x01, 0x00, 0x00, 0x00, |
|
|
|
|
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; |
|
|
|
|
|
constexpr std::array<u8, 0x10> NFSR_STANDARD{'N', 'F', 'S', 'R', 0x01, 0x00, 0x00, 0x00, |
|
|
|
|
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; |
|
|
|
|
|
|
|
|
|
|
|
constexpr auto TEXTURE_LOW_LINEAR = NFTR_STANDARD; |
|
|
|
|
|
constexpr auto TEXTURE_LOW_SRGB = NFTR_STANDARD; |
|
|
|
|
|
constexpr auto TEXTURE_MID_LINEAR = NFTR_STANDARD; |
|
|
|
|
|
constexpr auto TEXTURE_MID_SRGB = NFTR_STANDARD; |
|
|
|
|
|
constexpr auto SHAPE_HIGH = NFSR_STANDARD; |
|
|
|
|
|
constexpr auto SHAPE_MID = NFSR_STANDARD; |
|
|
|
|
|
|
|
|
|
|
|
} // namespace MiiModelData
|
|
|
|
|
|
|
|
|
|
|
|
VirtualDir MiiModel() { |
|
|
|
|
|
auto out = std::make_shared<VectorVfsDirectory>(std::vector<VirtualFile>{}, |
|
|
|
|
|
std::vector<VirtualDir>{}, "data"); |
|
|
|
|
|
|
|
|
|
|
|
out->AddFile(std::make_shared<ArrayVfsFile<MiiModelData::TEXTURE_LOW_LINEAR.size()>>( |
|
|
|
|
|
MiiModelData::TEXTURE_LOW_LINEAR, "NXTextureLowLinear.dat")); |
|
|
|
|
|
out->AddFile(std::make_shared<ArrayVfsFile<MiiModelData::TEXTURE_LOW_SRGB.size()>>( |
|
|
|
|
|
MiiModelData::TEXTURE_LOW_SRGB, "NXTextureLowSRGB.dat")); |
|
|
|
|
|
out->AddFile(std::make_shared<ArrayVfsFile<MiiModelData::TEXTURE_MID_LINEAR.size()>>( |
|
|
|
|
|
MiiModelData::TEXTURE_MID_LINEAR, "NXTextureMidLinear.dat")); |
|
|
|
|
|
out->AddFile(std::make_shared<ArrayVfsFile<MiiModelData::TEXTURE_MID_SRGB.size()>>( |
|
|
|
|
|
MiiModelData::TEXTURE_MID_SRGB, "NXTextureMidSRGB.dat")); |
|
|
|
|
|
out->AddFile(std::make_shared<ArrayVfsFile<MiiModelData::SHAPE_HIGH.size()>>( |
|
|
|
|
|
MiiModelData::SHAPE_HIGH, "ShapeHigh.dat")); |
|
|
|
|
|
out->AddFile(std::make_shared<ArrayVfsFile<MiiModelData::SHAPE_MID.size()>>( |
|
|
|
|
|
MiiModelData::SHAPE_MID, "ShapeMid.dat")); |
|
|
|
|
|
|
|
|
|
|
|
return std::move(out); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} // namespace FileSys::SystemArchive
|