CannibalSmith ([info]cannibalsmith) rakstīja [info]koderi kopienā,
@ 2008-08-28 15:14:00

Previous Entry  Add to memories!  Tell a Friend!  Next Entry
3D transformāciju matricas
Kā zināms, 3D koordinātas ir vektori (x, y, z, h), kur h = 1, un transformāciju matricas ir
a b c p
e f g q
i j k r
l m n s
, kur abcdefgijk ir rotācija, un lmn ir pārvietojums. Mēs iegūstam attēlu transformējot visus scēnas punktus uz kameras koordinātu sistēmu un projicējot tos uz ekrāna:
x_uz_ekrāna = puse_ekrāna_platuma + x / z
y_uz_ekrāna = puse_ekrāna_augstuma - y / z
.

Mans jautājums ir: ko dara ar hpqrs mainīgajiem?


(Lasīt komentārus) - (Ierakstīt jaunu komentāru)


[info]barvins
2008-08-28 20:03 (saite)
Hmm, pēc tiem vienādojumiem sanāk, ka l,m,n,s ietekmē tikai H, līdz ar to ir pofig, kādas ir to vērtības, ja mūs interesē tikai 3D telpa. p,q, un r gan kaut ko ietekmē, ja h nav 0 (tā būs tā translācija).

(Ka tik tie vienādojumi nav atkarīgi no tā, vai xyzh vektoru uzraksta horizontāli vai vertikāli. Tas reizinājums varēja būt arī šitā:
X = a*x + e*y + i*z + l*h
...
)

(Atbildēt uz šo) (Iepriekšējais) (Diskusija)


[info]bubu
2008-08-28 21:00 (saite)
vai xyzh vektoru uzraksta horizontāli vai vertikāli

jap, tev tiesa. Pats saputrojos.
Man neitīvais ir OpenGL pieraksts (column major).

(Atbildēt uz šo) (Iepriekšējais)


(Lasīt komentārus) -

Neesi iežurnalējies. Iežurnalēties?