texture loading!

This commit is contained in:
Asuro
2025-03-28 04:28:06 +01:00
parent f56ffdaa13
commit 365805537c
26 changed files with 244 additions and 84 deletions

View File

@@ -162,6 +162,26 @@ namespace Generated
}
return isOk;
}
bool Save(const TextureHandle* obj, uint32_t count, Serializer& serializer)
{
bool isOk = true;
for (uint32_t i = 0; i < count; ++i)
{
isOk = Save(&obj[i].TextureIdx, 1, serializer) && isOk;
isOk = Save(&obj[i].Asset, 1, serializer) && isOk;
}
return isOk;
}
bool Load(TextureHandle* obj, uint32_t count, Deserializer& serializer)
{
bool isOk = true;
for (uint32_t i = 0; i < count; ++i)
{
isOk = Load(&obj[i].TextureIdx, 1, serializer) && isOk;
isOk = Load(&obj[i].Asset, 1, serializer) && isOk;
}
return isOk;
}
bool Save(const PuzPos* obj, uint32_t count, Serializer& serializer)
{
bool isOk = true;
@@ -189,6 +209,7 @@ namespace Generated
{
isOk = Save(obj[i].Elements, 4, serializer) && isOk;
isOk = Save(&obj[i].ModelHandle, 1, serializer) && isOk;
isOk = Save(&obj[i].BoardTextureHandle, 1, serializer) && isOk;
}
return isOk;
}
@@ -199,6 +220,7 @@ namespace Generated
{
isOk = Load(obj[i].Elements, 4, serializer) && isOk;
isOk = Load(&obj[i].ModelHandle, 1, serializer) && isOk;
isOk = Load(&obj[i].BoardTextureHandle, 1, serializer) && isOk;
}
return isOk;
}

View File

@@ -103,6 +103,12 @@ namespace Generated
uint16_t ModelIdx = UINT16_MAX;
AssetHandle Asset = {};
};
struct TextureHandle
{
static constexpr uint32_t Hash = 1633273761;
uint16_t TextureIdx = UINT16_MAX;
AssetHandle Asset = {};
};
struct PuzPos
{
static constexpr uint32_t Hash = 1834398141;
@@ -111,9 +117,10 @@ namespace Generated
};
struct StaticPuzzleCard
{
static constexpr uint32_t Hash = 2851442461;
static constexpr uint32_t Hash = 431895198;
PuzzleElementType::Enum Elements[4] = {};
ModelHandle ModelHandle = {};
TextureHandle BoardTextureHandle = {};
};
struct StaticPuzzleCardHandle
{
@@ -122,7 +129,7 @@ namespace Generated
};
struct StaticPuzzleData
{
static constexpr uint32_t Hash = 4204694691;
static constexpr uint32_t Hash = 1497693577;
StaticPuzzleCard Cards[64] = {};
};
struct PuzzleCardStack
@@ -170,6 +177,8 @@ namespace Generated
bool Load(AssetHandle* obj, uint32_t count, Deserializer& serializer);
bool Save(const ModelHandle* obj, uint32_t count, Serializer& serializer);
bool Load(ModelHandle* obj, uint32_t count, Deserializer& serializer);
bool Save(const TextureHandle* obj, uint32_t count, Serializer& serializer);
bool Load(TextureHandle* obj, uint32_t count, Deserializer& serializer);
bool Save(const PuzPos* obj, uint32_t count, Serializer& serializer);
bool Load(PuzPos* obj, uint32_t count, Deserializer& serializer);
bool Save(const StaticPuzzleCard* obj, uint32_t count, Serializer& serializer);