JavascriptProva

lunedì 4 novembre 2013

Cominciamo a venire a capo di qualcosa di concreto su Direct3D

Forse sto venendo a capo.
Ragioniamo.
Ho un triangolo con i vertici di colore diverso:Blu, Verde e Rosso. Le coordinate dei vertici sono rispettivamente:
  • Blu: x=0,y=0,z=0
  • Verde: x=0.5, y=0, z=0
  • Rosso: x=0, y=0.5, z=0
Lasciamo la coordinata z invariata, ossia si trova perfettamente sul piano frontale.

Ora imposto il punto di vista, il punto puntato e l' "alto".
 device.Transform.View = Matrix.LookAtLH(New Vector3(0, 0, 2), New Vector3(0, 0, 0), New Vector3(0, 1, 0)) 
Il punto di vista dovrebbe essere di 2 unità "dietro" il triangolo.
Per questo il triangolo si vede così:

Questo perchè lo 0 dell'asse Z è "dietro".
Inverto la coordinata Z del punto di vista:
evice.Transform.View = Matrix.LookAtLH(New Vector3(0, 0, -2), New Vector3(0, 0, 0), New Vector3(0, 1, 0))
Ed ecco l'immagine:


E finalmente cominciamo a venirne a capo.

Nessun commento:

Posta un commento