mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-11-06 11:57:13 +00:00
fix: name the fourth flair colour byte padding
The client never sets or reads it, so it holds leftover memory. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -69,7 +69,7 @@ NiPoint3 Chunk::GridToWorldPos(uint32_t i, uint32_t j) const {
|
|||||||
BinaryIO::BinaryRead(stream, flair.colorR);
|
BinaryIO::BinaryRead(stream, flair.colorR);
|
||||||
BinaryIO::BinaryRead(stream, flair.colorG);
|
BinaryIO::BinaryRead(stream, flair.colorG);
|
||||||
BinaryIO::BinaryRead(stream, flair.colorB);
|
BinaryIO::BinaryRead(stream, flair.colorB);
|
||||||
BinaryIO::BinaryRead(stream, flair.colorA);
|
BinaryIO::BinaryRead(stream, flair.padding);
|
||||||
return true;
|
return true;
|
||||||
} catch (const std::exception&) {
|
} catch (const std::exception&) {
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -25,8 +25,10 @@ struct FlairAttributes {
|
|||||||
uint8_t colorR;
|
uint8_t colorR;
|
||||||
uint8_t colorG;
|
uint8_t colorG;
|
||||||
uint8_t colorB;
|
uint8_t colorB;
|
||||||
uint8_t colorA;
|
// Padding: never set when a flair is placed, so it holds leftover memory; nothing reads it
|
||||||
|
uint8_t padding;
|
||||||
};
|
};
|
||||||
|
static_assert(sizeof(FlairAttributes) == 36, "a flair record in the .raw is 36 bytes");
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Mesh triangle structure
|
* @brief Mesh triangle structure
|
||||||
|
|||||||
@@ -104,7 +104,7 @@ TEST_F(RawTest, ReadsEveryPartOfVersion32) {
|
|||||||
EXPECT_EQ(flair.colorR, 10);
|
EXPECT_EQ(flair.colorR, 10);
|
||||||
EXPECT_EQ(flair.colorG, 20);
|
EXPECT_EQ(flair.colorG, 20);
|
||||||
EXPECT_EQ(flair.colorB, 30);
|
EXPECT_EQ(flair.colorB, 30);
|
||||||
EXPECT_EQ(flair.colorA, 40);
|
EXPECT_EQ(flair.padding, 40);
|
||||||
EXPECT_TRUE(raw.chunks[2].flairs.empty());
|
EXPECT_TRUE(raw.chunks[2].flairs.empty());
|
||||||
|
|
||||||
EXPECT_EQ(chunk.vertSize, 4);
|
EXPECT_EQ(chunk.vertSize, 4);
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ namespace TerrainTestWriter {
|
|||||||
WriteBytes(stream, chunk.blendMapSize);
|
WriteBytes(stream, chunk.blendMapSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Flair: id, scale, position, rotation, RGBA (36 bytes)
|
// Flair: id, scale, position, rotation, RGB, padding byte (36 bytes)
|
||||||
Write(stream, chunk.flairCount);
|
Write(stream, chunk.flairCount);
|
||||||
for (uint32_t i = 0; i < chunk.flairCount; ++i) {
|
for (uint32_t i = 0; i < chunk.flairCount; ++i) {
|
||||||
Write<uint32_t>(stream, 500 + i);
|
Write<uint32_t>(stream, 500 + i);
|
||||||
|
|||||||
Reference in New Issue
Block a user