Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 12/15/2011 in all areas

  1. Predstavljam vam svoju master tezu. Radi se o 2D RTS engine-u napisanom from the scratch za Java 7 platformu. Naglasak je na jednom primeru pathfinding-a za strateske igre (ili slicne interaktivne sisteme). Kao sto se moze videti, engine je napisan sa mogucnoscu render-ovanja Starcraft multimedijalnih resursa. Resenje je hibridno. Zasnovano je na tzv. potencijalnim poljima, odnosno kontinualnom modelu, uz niz optimizacija (odnosno pojednostavljenja) da bi ono bilo primenljivo na interaktivne sisteme (RTS igre), izvrsivo samo na CPU-u i izvodljivo na Java-i. Motivaciju sam dobio iz http://www.youtube.com/watch?v=jA2epda-RkM. Sam kontinualni model je definisan ovde i to za sasvim drugu primenu - za crowd simulation. Poenta cele price je da se za zadani cilj, za ceo prostor generise potencijalno polje realnih vrednosti koje obrazuju opadajuci gradijent do samog cilja u kome je vrednost 0. Jedinice iz bilo koje tacke u prostoru mogu da odrede optimalnu putanju do cilja prateci opadajuce vrednosti potencijalnog polja i ne moraju imati fiksnu putanju ka cilju odredjenu nekom pretragom (kao sto je A* algoritam). Dinamicke prepreke (ostale jedinice i sl.) mogu da projektuju porast vrednosti potencijalnog polja sto prouzrokuje njihovo izbegavanje. U fizickom smislu, potencijalno polje je skalarna vremenska slika monotono sireceg talasa koji se siri iz ciljne tacke u prostoru, sto je definisano eikonal jednacinom. Potencijalno polje je u svakoj tacki jednako vremenskom trenutku u kome je talasni front dostigao tu tacku. Za numericku diskretizaciju eikonal jednacine koristi se upwind sema, a za sinlge-threaded procesorsku konstrukciju potencijalnog polja fast marching metoda. Za razresavanje kolizije korisitio sam pojednostavljeni flocking mehanizam. Nisam previse eksperimentisao sa razlicitim kolizionim radijusima, ali sam primetio izvesne probleme ako su oni dovoljno veliki (jer kolizioni mehanizam nije dovoljno sofisticiran). Ogromna prednost primene potencijalnih polja je cinjenica da jedinice ne moraju posedovati unapred isplaniranu putanju do cilja, vec planiraju samo jedan korak unapred, te pri otkrivanju kolizije ne moraju da skupo odredjuju alternativnu putanju. Mana je naravno hardverska zahtevnost, jer proracunavanje vrednosti potencijala za svako polje u grid-u nije nimalo naivno. Implementacija broji blizu 200 klasa (odnosno interfejsa). Kod sebe imam AMD Athlon X2 6000+ CPU. Proces zauzima do 500MB RAM-a i trpi do 1500 jedinica na mrezi rezolucije 512x512 sa 30+ fps. Konstrukcija potencijalnog polja traje oko 100ms. AMD je sa Radeon HD4xxx serijom predstavio GPGPU optimizovanu implementaciju za crowd simulation probleme, sto svakao planiram da istrazim, ali onda cela prica ide na odgovarajucu C++ platformu (gde joj je i mesto).
    1 point
  2. Уф, слажем се и са Песмом и са Иваном на овом топику, сад ме је страх да отворим следећи да се не сложим са Дакијем. ;)) Шалу на страну, мени је често проблем да сам као муфлон напаљен цео дан или два дана, а да она има главобољу, да је добила или нешто треће и да није расположена. Шта онда радиш Џи? Чекаш док јој не буде боље? :D Нормално некада ни теби није све потаман, па због ње улетиш у секс, као и она због тебе. Али некад просто ти је жао да је цимаш нпр. тако болесну, а теби је набој у гаћама. Мислим зар није исправно фино исфаповати? Поред тога ово што Зербах прича има итекако основа. Некад не желим секс, али желим да се олакшам на пар минута које су ми потребне за фап, јер не могу са девојком да то урадим тако брзо.
    -1 points
  3. Па наравно да није проблем :) Али када се говори о Балашевићу, онда више говориш о њему због његове музике, а не зато што је једном лупио ово или оно. Можеш говорити о његовом карактеру и ставовима ако их он изражава кроз своју музику, што ја баш нисам нешто толико приметио. Да он на крају крајева стоји иза свега тога, онда би он то пропагирао редовно на сваком свом концерту и смарао о томе итд. Али колико ја знам, а слушао сам га уживо пар пута, није то радио. Дотакне се он гејева, Хрвата, Срба, Црногораца, црнаца итд. али се човек тако спрда са свима, спрда се и на свој рачун редовно, и ако то нисте скучили до сад, па јебему баш све :) Ону Сару Силверман стенд-ап рибу треба онда вешати ако ћемо реално. :) Мислим кад га погледаш видиш да је човек бре жива меме слика :D
    -1 points
  4. Овај наш манекен...
    -1 points
  5. @Sarma: Не знам Сармо, али знам да си фино објаснио оном вотом. :)
    -1 points
This leaderboard is set to Belgrade/GMT+01:00
×
×
  • Create New...