Autor | Zpráva |
---|---|
![]() |
|
Lorin Odpovědi: 37 Shlédnuto: 26983 |
![]() |
Za mě bych byl rozhodně za uvolnění rád. Sám si teď zkouším "zbastlit" vlastní hru. Při tom vytvářím vlastní mini-framework, do kterého sypu vše, o čem si myslím, že bych ... | |
![]() |
|
Lorin Odpovědi: 6 Shlédnuto: 26991 |
![]() |
Existuje i pár celkem dobrých knížek přímo o tvorbě herního enginu.
Mohl byste prosím uvést nějaké příklady? Pokud ti jde ovšem spíš vymýšlení her, než jejich programování ... |
|
![]() |
|
Lorin Odpovědi: 6 Shlédnuto: 26991 |
![]() |
Dobré odpoledne. Momentálně dělám na jednoduché RPG hře. S návrhem hry jako takové by problém nebyl. Nápadů (byť třeba šílených) by bylo dost ![]() |
|
![]() |
|
Lorin Odpovědi: 38 Shlédnuto: 184839 |
![]() |
No kód je zdokumentovaný málo a hlavně špatně (v metodě find je třeba velikost openedListu na výstupu popsána jako "počet sousedů", což mi prostě hlava nebere).
Pozůstatek z ... |
|
![]() |
|
Lorin Odpovědi: 38 Shlédnuto: 184839 |
![]() |
Tak jsem se konečně dostal k tomu, abych to zkusil převést do kódu. Místy funguje dobře a vybírá správnou (relativně) cestu k cíli. Ale v určité chvíli začne vybírat pole blíže star ... | |
![]() |
|
Lorin Odpovědi: 38 Shlédnuto: 184839 |
![]() |
@Lorin - ja jsem dal odkaz jiz vyse - a to na Dijkstru - az napises spravne Dijkstru muzes zkusit optimalizovat na A* - to uz je jenom banalni uprava algoritmu
Neliší se Dijkstrův algoritmus od ... |
|
![]() |
|
Lorin Odpovědi: 38 Shlédnuto: 184839 |
![]() |
1.4 je dostačující odhad. Ve skutečnosti to je druhá odmocnina ze dvou ![]() Máte pravdu ![]() Přesně je to 1.414213562. Abych nemusel počítat s desetinnými čísly, zaokrouhlil jsem po ... |
|
![]() |
|
Lorin Odpovědi: 38 Shlédnuto: 184839 |
![]() |
Zaprve, hod sem zdrojak, pak bude jednodussi najit/ukazat, kde mas chybu.
Zdroják bohužel nemám. Nejdříve jsem se snažil najít nějaký algoritmus, který bude fungovat, tak jak si představ ... |
|
![]() |
|
Lorin Odpovědi: 38 Shlédnuto: 184839 |
![]() |
Ne. Pokud je G aktuálního uzlu + cost (aktuální, nový) < G nového, pak se změní G u nového (=relaxace) a updatne se nový uzel v prioritní frontě Co přesně má dělat cost(aktuáln ... |
|
![]() |
|
Lorin Odpovědi: 38 Shlédnuto: 184839 |
![]() |
Ak si to pamatam dobre, tak neexistuje nic ako "aktualna cesta". Cestu zistis az v momente, ked dosiahnes cielovy uzol a to tak, ze budes skakat po ulozenych predkoch dozadu po konca po star ... | |
![]() |
|
Lorin Odpovědi: 38 Shlédnuto: 184839 |
![]() |
Pokud jedeš přesně podle odstavce "Summary of the A* Method", tak nemůže nastat problém, hlavně jestli jsi nezapoměl na to, že když v cestě narazíš na políčko, které jsi ješ ... | |
![]() |
|
Lorin Odpovědi: 38 Shlédnuto: 184839 |
![]() |
Jinak pro tenhle typ mapy dostanes lepsi heuristiku z dx = abs(start.x - cil.x) dy = abs(start.y - cil.y) H = 14*min(dx, dy) + 10*(max(dx, dy) - min(dx, dy)) = 4*min(dx, dy) + 10*max(dx, dy), je ... |
|
![]() |
|
Lorin Odpovědi: 38 Shlédnuto: 184839 |
![]() |
Zkoušel jsem i neaktualizovat hodnoty G (a tedy i F), po vygenerování je prostě nechat tak, jak jsou a použít je. Výsledkem by byl postup:
Zelený > Pole s F = 17 (napravo od zeleného) & ... |
|
![]() |
|
Lorin Odpovědi: 38 Shlédnuto: 184839 |
![]() |
nebylo by jednodussi zacit treba timto - http://newwiki.ceske-hry.cz/Dijkstrův_algoritmus - a az pak zacit optimalizovat?
Jediný rozdíl mezi Dijkstrovým a A* algoritmem je v použití hodnoty H ... |
|
![]() |
|
Lorin Odpovědi: 38 Shlédnuto: 184839 |
![]() |
Ohodnotil jsem všechny potřebné pole, ale jejich hodnocení jsem v tomto obrázku vynechal. Zde je ukázka ohodnocení všech polí kolem zeleného čtverce.
http://malcakov.cz/img/a_pathfinding ... |
|
Časy uváděny v GMT + 1 hodina |
Powered by phpBB © 2001, 2005 phpBB Group
Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna