ObjLoading: Implement IPakEntryReadStream as a linear stream

This commit is contained in:
Jan
2020-02-09 09:51:57 +01:00
parent 7b3b527ece
commit 4baca81210
3 changed files with 121 additions and 110 deletions

View File

@ -7,35 +7,18 @@ IwiLoader::IwiLoader(MemoryManager* memoryManager)
Texture* IwiLoader::LoadIwi(FileAPI::IFile* file)
{
struct IWIHeaderMeta
struct
{
char tag[3];
char version;
} iwiHeaderMeta{};
file->GotoEnd();
auto iwiSize = static_cast<size_t>(file->Pos());
file->Goto(0);
auto* buffer = new uint8_t[iwiSize];
if(file->Read(buffer, 1, iwiSize) != iwiSize)
{
delete[] buffer;
if (file->Read(&iwiHeaderMeta, sizeof iwiHeaderMeta, 1) != 1)
return nullptr;
}
auto* meta = reinterpret_cast<IWIHeaderMeta*>(buffer);
printf("Read IWI with version %i\n", meta->version);
printf("Read IWI with version %i\n", iwiHeaderMeta.version);
// TODO: Read iwi based on version
return nullptr;
// if (file->Read(&iwiHeaderMeta, sizeof iwiHeaderMeta, 1) != 1)
// return nullptr;
//
// printf("Read IWI with version %i\n", iwiHeaderMeta.version);
//
// return nullptr;
}