Mono.Simd Vector3(floats)が見つかりませんか?
質問
Heya、MonoのSIMDを使用してプロジェクトの座標(X、Y、Z)を処理しようとしていますが、 ただし、Vector2およびVector4タイプのサポートのみが表示されます。以前に誰かがこれに遭遇したことがありますか、回避策はありますか?
事前に感謝します。
解決
これは、レジスタの動作方法に関連しています。 Vector4fを使用して、 W
部分を0または1(ベクトルで何をしたいかによって異なる)に設定するだけで、すべてが正常になります。
http://tirania.org/blog/archive/2008/Nov -03.html の説明:
x86プロセッサでは、これらの手順 新しいレジスタバンク(XMM レジスタ)、およびに構成することができます を使用して一度に16バイトで動作します 可能な組み合わせの数:
* byte-level operations on 16 elements. * short-level operations on 8 elements. * single precision or integer-level operations on 4 elements. * double precision or long-integer operations on 2 elements.
所属していません StackOverflow