.[ ČeskéHry.cz ].
d3d - pridani pistole ke kamere

 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> 3D API / 3D Enginy
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

PříspěvekZaslal: 28. leden 2008, 17:01:44    Předmět: d3d - pridani pistole ke kamere Odpovědět s citátem

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
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
]semo[



Založen: 29. 07. 2007
Příspěvky: 1526
Bydliště: Telč

PříspěvekZaslal: 29. leden 2008, 09:38:48    Předmět: Odpovědět s citátem

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
Zobrazit informace o autorovi Odeslat soukromou zprávu
am!go



Založen: 19. 08. 2007
Příspěvky: 61
Bydliště: Praha

PříspěvekZaslal: 29. leden 2008, 10:33:32    Předmět: Odpovědět s citátem

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
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 29. leden 2008, 11:48:23    Předmět: Odpovědět s citátem

Už se to řešilo tady: http://www.ceske-hry.cz/forum/viewtopic.php?t=375
A tady: http://www.ceske-hry.cz/forum/viewtopic.php?t=322
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
]semo[



Založen: 29. 07. 2007
Příspěvky: 1526
Bydliště: Telč

PříspěvekZaslal: 29. leden 2008, 13:25:44    Předmět: Odpovědět s citátem

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
Zobrazit informace o autorovi Odeslat soukromou zprávu
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 29. leden 2008, 13:59:06    Předmět: Odpovědět s citátem

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
Zobrazit informace o autorovi Odeslat soukromou zprávu
am!go



Založen: 19. 08. 2007
Příspěvky: 61
Bydliště: Praha

PříspěvekZaslal: 29. leden 2008, 16:26:15    Předmět: Odpovědět s citátem

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
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
am!go



Založen: 19. 08. 2007
Příspěvky: 61
Bydliště: Praha

PříspěvekZaslal: 29. leden 2008, 17:00:35    Předmět: Odpovědět s citátem

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
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> 3D API / 3D Enginy Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna