This commit is contained in:
2025-07-14 09:50:26 +06:00
parent 9c64b893cf
commit cfec93957d
22 changed files with 1266 additions and 393 deletions

View File

@@ -485,6 +485,28 @@ void unCompressNodes(const std::u8string& compressed, Node* ptr);
std::u8string compressLinear(const std::u8string& data);
std::u8string unCompressLinear(const std::u8string& data);
enum struct TexturePipelineCMD : uint8_t {
Texture, // Указание текстуры
Combine, // Комбинирование
};
struct TexturePipeline {
std::vector<BinTextureId_t> BinTextures;
std::u8string Pipeline;
};
struct DefNode_t {
enum struct EnumDrawType : uint8_t {
NoDraw, // Не рисуется
Simple, // Простая нода с текстурами на каждой стороне
} DrawType = EnumDrawType::Simple;
TexturePipeline Texs[6];
};
using Hash_t = std::array<uint8_t, 32>;
}

View File

@@ -32,14 +32,14 @@ struct PacketQuat {
value |= uint64_t(w & 0x3ff) << 30;
for(int iter = 0; iter < 5; iter++)
Data[iter] = (value >> (iter * 8)) & 0xff;
Data[iter] = (value >> (iter*8)) & 0xff;
}
glm::quat toQuat() const {
uint64_t value = 0;
for(int iter = 0; iter < 5; iter++)
value |= (Data[iter] >> (iter*10)) & 0x3ff;
value |= uint64_t(Data[iter]) << (iter*8);
uint16_t
x = value & 0x3ff,
@@ -52,7 +52,7 @@ struct PacketQuat {
float fz = (float(z)/0x3ff)*2-1;
float fw = (float(w)/0x3ff)*2-1;
return glm::quat(fx, fy, fz, fw);
return glm::quat(fw, fx, fy, fz);
}
};
@@ -144,19 +144,10 @@ enum struct L2System : uint8_t {
};
enum struct L2Resource : uint8_t {
Texture,
FreeTexture,
Animation,
FreeAnimation,
Sound,
FreeSound,
Model,
FreeModel,
Font,
FreeFont,
Bind, // Привязка идентификаторов ресурсов к хешам
Lost,
InitResSend = 253,
ChunkSend,
SendCanceled
ChunkSend
};
enum struct L2Definition : uint8_t {