SaladDais / Hippolyzer

Intercepting proxy + analysis toolkit for Second Life compatible virtual worlds
GNU Lesser General Public License v3.0
13 stars 5 forks source link

Use numpy arrays for mesh coordinate serialization and quantization #30

Closed SaladDais closed 2 years ago

SaladDais commented 2 years ago

Mesh parse time is currently dominated by deserialization and U16 quantized float -> float32 conversion.

I like the declarative serialization interface of serialization.py, and I sort of like the existing coordinate classes, but they're stupidly slow for large, regular buffers of data like array data where we could benefit from numpy's vectorization.

SaladDais commented 2 years ago

https://github.com/SaladDais/Hippolyzer/commit/e4548a285d63b7aa6154e9d09f4f56679dd54de8 https://github.com/SaladDais/Hippolyzer/commit/1a308e9671e3dcab24ca8df8762c7d4164823338