BigUglySpider / EmuLibs

Selection of libraries designed to be used with Emu projects. This was originally a Math library only, but has since been changed to hold all Emu libraries to enable consistency in changes to dependencies (such as EmuCore modifications).
https://biguglyspider.github.io/math
0 stars 0 forks source link

[EmuMath] `_make_fast_quat_from_euler` does not support registers with > 4 elements #70

Open BigUglySpider opened 1 year ago

BigUglySpider commented 1 year ago

Currently handling for calculations where the data is stored in a register only supports 4-element registers due to the usage of shuffle_full_width<I0_, I1_, I2_, I3_> being the only path.

This is considered low priority as it is pointless and thus very unlikely that a FastQuaternion will use a register with more than 4 elements. With that said, even if such a thing is done then this creation issue can be worked around by constructing a FastQuaternion from the results of Quaternion::from_euler (whose function is virtually identical in terms of performance due to the amount of extra busywork required for SIMD approaches).