Zobrazit předchozí téma :: Zobrazit následující téma |
Autor |
Zpráva |
egrishot
Založen: 05. 01. 2011 Příspěvky: 23
|
Zaslal: 14. únor 2012, 17:43:15 Předmět: Asi sem na to kápl. |
|
|
Asi jsem ve vlaku přišel na algoritmus.
Btw .S vektorama v programování nemám zkušenosti ani bych si nedokázal představit jak to tam udělat.
Ale zpět k algoritmu chtěl bych znát váš názor.
jsou dvě textury a panáček mezi dvěmi texurami je díra, kterou má samozřejmě panáček přeskočit.
Tady zhruba jeten algoritmus(je to jenom takový symbolický zápis aby jste věděli nejsou tam žádné opravdové funkce
):
// pozice_akt pozice aktuální v jaké se zrovna nachází myslým y pozici
//pozice_start pozice ve které se nacházel před skokem tedy ze které skočil zase y pozice+jmpmax kdy jmpmax je maximální výška výskoku tedy základní pozice plus těch třeba 80 px.
//začátek smyčky
bool skok;
if(stiskuná klávesa down==true)
{
while(pozice_akt != pozicestart+jmpmax)
{
y=y-5;//zvedá se hodnota y zdá se tedy že skáče
skok=true; skok se provedl alespoň na chvíli
}
}
if(skok==true)//skok byl proveden
{
while(kolize!=true)//bude klesat dokud nedojde ke kolizi
{
y=y+5;// panáček klesá dokud nedojde ke kolizi
}
skok=false;// skok se nastaví na false aby se mohl opt provést
}
//a když k ní dojde tak konec
jednoduše řečeno na ty (čtverce) textury aplikuji čtverce snímané na kolizi
když hráč podrží klávesu začne se posouvat nahoru a když hodnota y aktualní kterou snímám je
na jmpmax tedy maximální výška kterou doskočí inkrementuji tedy posouvám dolů
a když dojde ke kolizi tak je konec a skok je nastaven na false |
|
Návrat nahoru |
|
 |
franz
Založen: 30. 07. 2007 Příspěvky: 1325
|
Zaslal: 14. únor 2012, 18:54:04 Předmět: Re: Asi sem na to kápl. |
|
|
egrishot napsal: |
Ale zpět k algoritmu chtěl bych znát váš názor. |
hrůza, všechno vylejt  |
|
Návrat nahoru |
|
 |
egrishot
Založen: 05. 01. 2011 Příspěvky: 23
|
Zaslal: 14. únor 2012, 19:02:44 Předmět: |
|
|
Jo sorry pak jsem si té chyby všiml že jaksik by to chtělo trochu poupravit že to nepočítá s pár dalšími faktory |
|
Návrat nahoru |
|
 |
pcmaster

Založen: 28. 07. 2007 Příspěvky: 1827
|
Zaslal: 15. únor 2012, 10:09:34 Předmět: |
|
|
Uplny zaklad je tzv. slucka (smycka, loop) sprav, alebo podobny mechanizmus (timer). Ten zabezpeci, ze sa ti v kazdom snimku vykona tato tvoja "fyzikalna" simulacia. Najprv "spracuje" vstupy (tlacitka klavesnice). Potom sa prepocitaju polohy vsetkych tvojich "simulovanych" objektov v tvojom svete. A nasledne sa tieto polohy pouziju pre vykreslovanie. A dalsi frame znovu. A znovu.
Pre panaka budes mat premennu "(vertikalna) pozicia" (v metroch) a "vertikalna rychlost" (v metroch za sekundu). Tu nastavis pri stisku tlacitka (v pripade, ze panak je nohami na zemi) na nejake relativne vysoke cislo smerom "nahor" (napriklad +20 m/s). V kazdom snimku potom odpocitas "gravitacne zrychlenie" krat "cas od posledneho snimku" (napriklad -9.8 m/s/s * 0.01 s = -0.098 m/s). Finalna vertikalna pozicia v tom snimku potom bude "minula vertikalna pozicia" + "vertikalna rychlost" krat "cas od posledneho snimku" (napriklad 5 m + (20 - 0.098) m/s * 0.01 s = 5.19902 m). Tie jednotky som tam neuvadzal len tak zo srandy
V kazdom frame budes samozrejme detegovat, ci nenarazil na nejaky teren (a potom ho posunies natvrdo do bezkoliznej polohy, napriklad) a pripadne ho pohybovat v horizontalnom smere. "Dvoj-vyskok", "lietanie (jet-pack)", atd, doriesis velmi podobne (povolis dalsie pripadne momenty aplikacie "vyskakovacieho impulzu"). Pri kolizii s terenom mozes aplikovat "proti-impulz", ktory panaka (projektil, ...) odrazi smerom prec od prekazky...
Dufam, ze chapes tento jednoduchy zaklad. Ak nie, pytaj sa. Nie, nejde to jednoduchsie.  _________________ Off-topic flame-war addict since the very beginning. Registered since Oct. 2003!
Interproductum fimi omne est. |
|
Návrat nahoru |
|
 |
egrishot
Založen: 05. 01. 2011 Příspěvky: 23
|
Zaslal: 15. únor 2012, 22:19:34 Předmět: |
|
|
Jo pardon dělám to v c# takže ty smyčky už tam mám je to přes xna jenom právě ten skok sem řešil ale pár lidí mi dalo radu takže už to asi budu mít vrhnu se na to v sobotu. |
|
Návrat nahoru |
|
 |
|
|
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