Zobrazit předchozí téma :: Zobrazit následující téma |
Autor |
Zpráva |
am!go
Založen: 19. 08. 2007 Příspěvky: 61 Bydliště: Praha
|
Zaslal: 28. leden 2008, 17:01:44 Předmět: d3d - pridani pistole ke kamere |
|
|
Caues, resim takovej problem jak pripevnit u fps hry pistoli na kameru. Zkousel sem to nasledovne, ale nefunguje.
kód: |
D3DXMATRIX vinv;
D3DXMatrixInverse(&vinv, 0, &matView);
matAll = matAll * vinv
|
matAll je
kód: |
matAll = (matRotationX * matRotationY * matRotationZ * matScale * matTranslation); // world transformation pro pistoli
|
zil sem teda v domeni, ze inverzni view matrix se da pouzit jako world matix, ale zacinam mit pochyby. |
|
Návrat nahoru |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1526 Bydliště: Telč
|
Zaslal: 29. leden 2008, 09:38:48 Předmět: |
|
|
Zkus třeba vzít matici kamery (ne View, ale Object) a nastavit jí té pistoli. Případně pak přinásobit nějakou translační matici, abys doladil pozici. _________________ Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory |
|
Návrat nahoru |
|
|
am!go
Založen: 19. 08. 2007 Příspěvky: 61 Bydliště: Praha
|
Zaslal: 29. leden 2008, 10:33:32 Předmět: |
|
|
To jsem asi moc nepochopil, ale jestli jsi myslel vytvaret pro kameru world matrix tim, ze si budu uchovavat jako promenny jeji pozici a rotaci a z toho pocitat world matrix, tak to je tak ta posledni moznost, jak bych to chtel resit. Prece musi jit nejak jednoduse previst view matrix na world. |
|
Návrat nahoru |
|
|
Marek
Založen: 28. 07. 2007 Příspěvky: 1782 Bydliště: Velká Morava
|
|
Návrat nahoru |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1526 Bydliště: Telč
|
Zaslal: 29. leden 2008, 13:25:44 Předmět: |
|
|
amigo:
co si nepochopil? Vždyť je to přece uplně jasný, když vezmeš matici kamery a tu samou matici nastavíš zbrani, tak bude zbraň na stejným místě jako je kamera. Je to na pochopení nejjednodušší způsob, ale dá se to udělat různě. _________________ Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory |
|
Návrat nahoru |
|
|
Marek
Založen: 28. 07. 2007 Příspěvky: 1782 Bydliště: Velká Morava
|
Zaslal: 29. leden 2008, 13:59:06 Předmět: |
|
|
Matici objektu "zbraň" bych nastavil (vlastní transformaci pro umístění na obrazovce) * (inverzní matice kamery). To se pak s maticí kamery vyruší, takže tam zůstane jenom ta vlastní transformace a zbraň se tedy bude pohybovat s kamerou. _________________ AMD Open Source Graphics Driver Developer |
|
Návrat nahoru |
|
|
am!go
Založen: 19. 08. 2007 Příspěvky: 61 Bydliště: Praha
|
Zaslal: 29. leden 2008, 16:26:15 Předmět: |
|
|
Cau, tohle je zpusob, kterej jsem presne myslel, ale nefunguje mi.
ta zbran je nactena mesh, ktera ma nejakou world matrix, jak se ma vykreslit (pozice, rotace, meritko). Ta kamera je reprezentovana View matrix. A ja mam snahu dosahnout toho, abych zadal ty world matrix treba :
pozici [0;0;10]
rotaci [0;0;0]
meritko [1;1;1]
a zbran se tim padem vykreslovala 10 jednotek pred kamerou a rotovala podle ni. V podstate zmenit pocatek souradnyho systemu. A kdyz se teda snazim vynasobit world matrix inverzni view matrix(viz. prvni prispevek), tak to nefunguje. |
|
Návrat nahoru |
|
|
am!go
Založen: 19. 08. 2007 Příspěvky: 61 Bydliště: Praha
|
Zaslal: 29. leden 2008, 17:00:35 Předmět: |
|
|
Tak se mi to konecne podarilo. Je mi to trapny, ale jak rvni prispevek ukazuje, nasobil sem tu world matrix znova a znova, takze se dely nejaky strasny veci a fungovat to nemohlo. Diky vsem za pomoc. |
|
Návrat nahoru |
|
|
|