Ciò che Unity dice sui punti rispetto ai vettori non ha senso nel lungo periodo, poiché le API della geometria selezionano solo definizioni distinte per rendere lo strumento più accessibile, non corrispondono al modo in cui queste cose sono concettualizzate nella geometria. Dai un'occhiata alle implementazioni delle classi, se puoi. Perché è arbitrario, conoscerne la definizione è l'unico modo per capire qual è il concetto. Informativa completa, non ho esperienza Unity.
Un vettore è un punto in uno spazio vettoriale , in quanto il concetto di un punto nella geometria è codificato da elementi dell'insieme sottostante. Uno spazio vettoriale ha un vettore distinto, chiamato origine o 0 . L'algebra lineare è un tentativo di codificare un frammento di geometria euclidea con un'origine algebrica.
La freccia e la sua lunghezza
I movimenti attraverso uno spazio di punti vengono spesso interpretati come tutte le frecce dalla sorgente / prima dei punti al loro obiettivo / dopo i punti.
Una funzione di due argomenti può essere applicata a un argomento per produrre una funzione di un argomento - possiamo parlare di x +, la funzione che porta ogni vettore y al vettore x + y . Questa è la traduzione associata con l'aggiunta di x . Le frecce associate vanno dai punti y ai punti x + y . Vedi: applicazione parziale , curry .
Quindi perché usiamo solo una freccia ? La freccia dall'origine punta a un vettore specifico, la x in x +: l'origine è l'identità dell'aggiunta vettoriale. Quindi, possiamo recuperare la traduzione x + solo dal suo valore x +0 = x .
Come rappresentazione grafica dello spazio, la rappresentazione della freccia ha a che fare con la nostra capacità di estrapolare visivamente o fisicamente l'effetto di una traduzione dal valore che lo determina. Quando abbiamo quella capacità?
Dare una norma allo spazio vettoriale rendendolo uno spazio vettoriale normato significa fornire una nozione della lunghezza di un vettore che abbia senso in quanto distanza da 0. Inoltre, questa deve essere una distanza che soddisfa la disuguaglianza del triangolo, che è un forte vincolo su come le lunghezze di due vettori si relazionano a quelle della loro somma. Dalla lunghezza possiamo definire la distanza per rendere questo uno spazio metrico e una geodetica è un percorso intrinsecamente dritto in quanto è il più corto possibile. La norma euclidea induce la distanza euclidea e la geodetica sono i segmenti di linea delle frecce, ma se si disegnano le frecce come geodetiche usando norme diverse, potresti estrapolare l'effetto geometrico della traduzione dalla geodetica per conoscere la geometria.
Il significato di punto e vettore
In alcuni casi nel fare la geometria dei giochi, il tuo spazio di punti non è uno spazio vettoriale . Uno spazio affine di dimensione n può essere incorporato in uno spazio proiettivo di dimensione n . Le mappe affini si riducono a proiettività. Le proiettivita 'ti permettono anche di fare FOV, penso che non sia affine. Le proiettilità hanno vantaggi:
Lo spazio n proiettivo su un campo può essere costruito dallo spazio lineare ( n +1) (spazio vettoriale), trattando i punti dello spazio proiettivo come linee attraverso l'origine dello spazio lineare. Gli aerei attraverso l'origine a loro volta danno linee proiettive. Moltiplicare i vettori per una matrice fissa è una mappa lineare , ecco a cosa serve la moltiplicazione della matrice. Le mappe lineari preservano l'origine e sono compatibili con l'incidenza. In particolare, se f è un automorfismo lineare ( corrispondente a una matrice invertibile ( n +1) x ( n +1)) e due linee L, M attraverso l'origine si estendono su un piano A , quindif L, f M sono linee che attraversano l'origine f f A , quindi f manterrà anche l'incidenza sullo spazio proiettivo - una matrice invertibile ha una proiettività associata. La moltiplicazione delle matrici codifica la composizione delle mappe lineari, e quindi delle proiettività.
Rimuovendo l'origine dallo spazio lineare, tutti i punti su una data linea attraverso l'origine sono multipli scalari l'uno dell'altro. Sfruttando questo fatto, l' omogeneizzazione sceglie un punto lineare per sostituire ogni punto proiettivo e una matrice invertibile per sostituire ogni trasformazione proiettiva (come in questo video 2D -> mappe affini 2D come 3D -> mappe lineari 3D ), in un tale modo in cui i rappresentanti sono chiusi sotto prodotti matrice-matrice e matrice-vettore e danno e sono dati da cose proiettive uniche. Questa descrizione della costruzione del piano proiettivo dal piano lineare lega alcune cose.
Quindi, nella pipeline della matrice di proiezione vista modello, stiamo usando i vettori per rappresentare i punti del nostro spazio proiettivo, ma lo spazio proiettivo non è uno spazio vettoriale e non tutti i vettori nello spazio vettoriale che stiamo usando rappresentano punti della nostra geometria (vedi foto del piano affine a destra ). Usiamo matrici di traduzione anziché somma vettoriale se vogliamo traduzioni. A volte, le persone chiamano vettori di punti proiettivi o affini, specialmente quando si utilizza una configurazione in questa vena.