Mono.Simd Vector3 (float) mancante?
Domanda
Heya, sto cercando di utilizzare il SIMD di Mono per gestire le coordinate (X, Y, Z) nel mio progetto, ma vedo solo il supporto per i tipi Vector2 e Vector4. Qualcuno l'ha mai incontrato prima e ci sono soluzioni alternative?
Grazie in anticipo.
Soluzione
Questo è collegato al modo in cui funzionano i registri. Puoi semplicemente usare Vector4f e impostare la parte W
su 0 o 1 (a seconda di cosa vuoi fare con il vettore) e tutto andrà bene.
http://tirania.org/blog/archive/2008/Nov -03.html spiega:
Su questi processori x86 queste istruzioni utilizzare un nuovo banco di registri (l'XMM registri) e può essere configurato per lavorare su 16 byte alla volta usando a numero di combinazioni possibili:
* 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.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow