Diskuze: XNA - kolize, kruhové objekty

C# .NET .NET (C# a Visual Basic) XNA - kolize, kruhové objekty American English version English version

Avatar
user
Redaktor
Avatar
user:

Ahoj,
jak na kolize kruhových objektů? Nechci je kontrolovat pomocí Rectanglů...
Pokud je to složitější, stačili by i nějaké zdroje (i v EN), kde bych se dozvěděl více, pokud nějaké znáte...
Děkuji za pomoc

 
Odpovědět 8.8.2012 3:14
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na user
David Čápka:

Pokud chceš kolizi kruh-kruh, stačí ti pouze odečíst 2 vektory (Vector2 souřadnice středů těch kruhů) a porovnat, zda je tato vzdálenost menší, než součet jejich poloměrů.

Tedy něco jako:

Vector2 v1 = new Vector2(x1, y1);
   Vector2 v2 = new Vector2(x2, y2);
   Vector2 vzdalenost = v1 - v2;
   if (vzdalenost.Length() < polomer1 + polomer2) ...

Bez vektorů se to dá řešit hezky přes pravoúhlý trojúhelník, ale to je v XNA zbytečné.

Nahoru Odpovědět 8.8.2012 9:16
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
matesax
Redaktor
Avatar
Odpovídá na David Čápka
matesax:

Nedá se to do jednoho tématu? :)

 
Nahoru Odpovědět 8.8.2012 9:22
Avatar
user
Redaktor
Avatar
Odpovídá na David Čápka
user:

pokud bych chtěl kolizi kruh - obdelník? :)
...ale díky

 
Nahoru Odpovědět 8.8.2012 14:34
Avatar
matesax
Redaktor
Avatar
Odpovídá na user
matesax:

Už jsem ti odpověděl - v druhém tématu - nevím proč máš 2...

 
Nahoru Odpovědět 8.8.2012 14:43
Avatar
matesax
Redaktor
Avatar
Odpovídá na user
matesax:

Snadno by se to dalo předělat i pto hranol vs ovál...

 
Nahoru Odpovědět 8.8.2012 14:46
Avatar
user
Redaktor
Avatar
Odpovídá na matesax
user:

jo aha, všimnul jsem si toho až teď, omlouvám se, jedu přes net v mobilu (neni to 3G) takže někdy s tím mám větší problémy než obvykle...
Díky

 
Nahoru Odpovědět 8.8.2012 14:47
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.