• Non ci sono risultati.

Vettorie TransformazioniSpaziali Marco Tarini TrasformazioniSpaziali

N/A
N/A
Protected

Academic year: 2021

Condividi "Vettorie TransformazioniSpaziali Marco Tarini TrasformazioniSpaziali"

Copied!
9
0
0

Testo completo

(1)

Game Development

Trasformazioni Spaziali

Marco Tarini

Vettori e

Transformazioni Spaziali

Mathematics for 3D Game Progr. and C.G.

(3za ed)

Eric Lengyel

(2)

Intro

 Vettori

 n -ple di scalari



Nei games, tipicamente, con n = 2,3, 4

 nei games usati per rappresentare:



Posizioni (punti)



Direzioni (vettori direzione)



E anche:



delta fra posizioni (spostamenti)



Quantità fisiche correlate

(velocità, momenti, momenti angolari)



e: piani, sfere, rette, raggi...

Posizioni e direzioni

g

(3)

Posizioni e direzioni

 3D Model

Algebra dei vettori

 Operazioni lineari

 Somma, prodotto con scalare

 Prodotto dot

 Magnitudo (lunghezza)

e normalizzazione

(4)

base vettoriale

 Insieme di n vettori (qui: x,y,z )

 Ogni vettore v esprimibile come combinaz lineare di x,y,z

 Esempio con vettori direzione

y

x

z

sistema di riferimento del mondo

Ripasso: sistema di

riferimento (geometric frame)

y

z

x o

sistema di riferimento

(5)

Chiralità di un frame

 Un sistema di riferimento ortogonale può essere sinistrorso o destrorso

sinistrorso destrorso

z y x × =

Ricordiamoci di usare la STESSA MANO per immaginare il prodotto cross

z y x × =

comunque!

Trasformazioni spaziali

 Funzioni

 input: un vettore

 output: un vettore

p

f

f

f

(6)

z

Object Coordinates



Dare ad ogni oggetto il suo sistema di coordiante privato:

il suo Object Space;

y

y

y

y

x

x

x

x

z

z

z

z

y

x

f

Trasformazione spaziale di modellazione

Spazio Oggetto

Spazio Mondo

f

(7)

Object Space (analogo in 2D)

• spazio oggetto

1

spazio oggetto (“spazio macchina”) origineoooodello

spazio oggetto

x y

2 3

-1 -2

-3

assixxxxe yyyydello spazio oggetto

1 2 3

-1 -2 -3

Object Coordinates (analogo in 2D)

• coordinate oggetto

2.3 p = ( 1.5 1.5 1.5 1.5 , 2.3 2.3 2.3 2.3 )

coordinate dipppp in spazio oggetto

x

y

(8)

• coordinate mondo

1.5 2.3

p = (1.5, 2.3)

spazio oggetto (“spazio macchina”)

coordinate dipppp in spazio oggetto

x y

x y

spazio mondo

= (12.5, 8.1) 8.1

12.5

coordinate dipppp in spazio mondo

1 1

Object Coordinates

1.5 2.3

p = (1.5, 2.3)

spazio oggetto (“spazio macchina”)

coordinate di p p p p in spazio oggetto

x y

y

= (12.5, 8.1)

8.1 coordinate di p p p p

in spazio mondo 5.8

 

 

 

 

=

 

 

 

 

 

 

1 0 . 0

1 . 8

5 . 12

1 0 . 0

3 . 2

5 . 1

1 0 0 0

0 . 0 1 0 0

8 . 5 0 1 0

11

0

0

1

(9)

Object Coordinates

p = (1.5, 2.3)

spazio oggetto:

(“spazio macchina AAAA”)

coordinate in spazio oggetto

x y

= (9.7, 4.2) 7.4

22.5

spazio oggetto:

(“spazio macchina BBBB”) coordinate in spazio mondo

p = (1.5, 2.3)

= (22.5, 7.4)

9.7 1

1 4.2

spazio mondo

Riferimenti

Documenti correlati

A simple rendering method is presented to avoid vertex seams in cylindrical and toroidal uv-mappings used for texture mapping (a vertex seam is a vertex dupli- cation of a

Marco Tarini - Video Game Dev Univ... Marco Tarini - Video Game Dev

volumetric data, polygonal meshes, NURBS, splines, subdivision surfaces, LODs, multiresolution structures…. • 3D acquisition (catturare modelli 3D

Un nuovo tassello D sar` a posizionato nella casella vuota rappresentata dal puntino a condizione che il bordo Ovest di D abbia un mismatch col bordo Est di C minore di quello

Non tutti i puffi si conoscono fra loro: ogni puffo conosce tutti i propri amici, naturalmente, e anche tutti quelli che i propri amici e i propri conoscenti conoscono (i puffi

In ogni momento, una casella pu` o essere gi` a riempita o da terra o da acqua, proveniente da uno dei quattro angoli, oppure pu` o essere ancora vuota.. Inizialmente, solo i

Per fare questo, ogni volta che emerge un nuovo pesce dominante, si vuole sapere la sua posizione (cio` e quella della sua tana) e il suo peso, al momento del “sorpasso”... Nota:

Bisogna scrivere un programma che legga da un file una sequenza di eventi, come l’introduzione di una nuova persona nel gruppo delle cene, l’estromissione dallo stesso gruppo