Xaymar / Hellextractor

A simple tool to extract things from Helldivers 2 for your 3D printing needs.
BSD 3-Clause "New" or "Revised" License
32 stars 5 forks source link

.unit: Type 0x7, Format 0x1F is unsupported #6

Closed Xaymar closed 6 months ago

Xaymar commented 6 months ago

Width: 8 Bytes

Xaymar commented 6 months ago

Format might be half[4], but the values itself seem unclear so far.

Xaymar commented 6 months ago

https://github.com/Xaymar/Hellextractor/issues/1#issuecomment-1962847373

Xaymar commented 6 months ago

Oh, thinking about it, the 4th half here makes sense since we're working in limited precision. I'm not sure what the epsilon for the half precision float is, but it might be larger than what needs to be represented. So the 4th value allows you to error-correct the length of the vector by knowing the error generated. A bit weird, but it's an efficient use of 4 halfs, instead of wasting the 4th.

Alternatively, this is now a quaternion with 4 halfs. See here at "Convert Axis-Angle to Quaternion".

Xaymar commented 6 months ago

Type 7 cannot reasonably exist in the same space as everything else. The vertex stride does not allow for it. See #1