PR00FPS

Címkék
PR00FPS
2006-05-20T15:25:21+02:00
2007-09-06T23:38:15+02:00
2022-10-30T08:15:31+01:00
  • Uhh, sorry, de nem válaszoltam.

    Ez ötödéves dolgozat volt, a szakközépben. De ettől függetlenül még hívhatjuk diplomamunkának.
    5-öst kaptam rá suliban, az OSZTV versenyen pedig 18 pontot a 20 pontból.
    Mutasd a teljes hozzászólást!
  • Nagyon jó! Direkt tetszett a kvékes fíling. Bár a botok engem is legyaktak. Ha körbe akartam menni a pályán, ki kelled dobjam a botokat.
    Szóval mégsem mindenki itt csináltatja a házikat, dolgozatokat, egyebeket...
    Mégegyszer .
    Mutasd a teljes hozzászólást!
  • 'sza!
    Mutasd a teljes hozzászólást!
  • Fogod te még sokmindenre vinni
    Mutasd a teljes hozzászólást!
  • WoW, ez tök jó lett, igazán tetszik!

    Bár a botok legyalultak engem, mint kacsa a nokedlit, de tényleg pofás és gyors is. Gratula hozzá.

    Ha szabad megkérdeznem, milyenre értékelték (a diplomamunkád)?
    Mutasd a teljes hozzászólást!
  • Emberek, elkészült a szakdolgozatom.

    http://adamstech.uw.hu

    Már értékelték, úgyhogy ez már végleges, max. patch lesz hozzá.
    Mutasd a teljes hozzászólást!
  • Collision detection - Wikipedia, the free encyclopedia

    Eszerint van két lehetőséged. Az egyik az, hogy felosztod az adott időtartamod kisebb részekre, és azokra külön megvizsgálod, hogy van-e ütközés (és ha pontosan akarod, akkor bináris keresést is lefuttathatsz (10 iterációval már elég tűrhető eredményt kapsz, 20-al már elég pontosat)). A másik megoldás, amihez persze végképp nem értek, hogy elkezdesz vmilyen gyököket keresgélni, szóval még több matek.
    Amúgy, ha nem multis a játék, akkor csinálhatsz egy olyat, hogy maximum időköz, pl. 0.1 sec, (magyarán if(time>0.1)time=0.1;), és így nem fog akkorákat ugrálni, ha beszaggat.
    Good luck and keep up the good work!
    Mutasd a teljes hozzászólást!
  • Hmm... nem igazán értem.

    Most is úgy van, hogy minden frame-nél logikai elmozdulás, ütközés detektálás, aztán a fizika elmozdulás, aszerint, hogy mi lett az ütközés detektálás eredménye.
    Mutasd a teljes hozzászólást!
  • Mi lenne, ha a bemenet olvasása után, de még a megfelelő mozgás elvégzése előtt végeznél egy vizsgálatot, hogy a mozgás megtétele után mi fog történni? Remélem nem vagyok érthetetlen
    Mutasd a teljes hozzászólást!
  • Üdv Mindenkinek!

    Szépen elsüllyedt ez a topic, ennek több oka is volt.
    Az a helyzet, hogy most fejezem be ötödéves tanulmányaimat, és ugye kell csinálni szakdolgozatot.
    Tavaly kitaláltam, hogy ha elkezdtem azt a gémet csinálni, ami miatt ez a topic elindult, akkor legyen ez a szakdolgozatom, 3D-set úgysem csináltak még (legalábbis nem láttam a régiek közül).
    Eredetileg annyi lett volna, hogy ilyen Wolfenstein 3D szintű lövöldözés lett volna... hajj, bárcsak maradtam volna ennél. Csak az a baj, h magasabbra raktam a lécet, és túlvállaltam magam szakdoga ügyben. Mindig kitaláltam valamit, na még ezt meg azt rakjuk be. Mindegy.
    Az a helyzet, hogy kb 75%-os állapotban van most a játék, még mindig PR00FPS-nek hívják.

    Az eredeti PR00FPS úgy lett volna, hogy van egy egyszerű mapeditor, mint anno wolfhoz, azzal megcsinálod a mapokat, és lehet rajtuk játszani... egy fal mondjuk egy kocka.
    Mozgás előre, hátra, balra, jobbra.
    Ennyi.
    Ehelyett lett egy olyan gém, hogy vmi modell szerkesztőben (pl. 3ds max) megcsinálja az ember a mapot, berakja a spawnpointokat, itemek helyét, kiexportálja OBJ formátumba és be lehet tölteni a mapot. Van oldalazás és ugrás is. Meg mouselook.
    A grafikus engine is több lett, mint amit terveztem. Shaderezés nincs benne, de legalább úgy működik, ahogy akartam, display listezik és textúrát tömörít. Ez a két dolog, ami a legnagyobb sebességnövekedést hozta a nyári motor óta. Meg persze a rajzolási ciklus szervezése, minél kevesebb opengl state change, stb... a benti sulis gépeken jól tudom tesztelni a sebességet, mert alaplapi videokártyák széles választéka fogad (intel 845G, 915, SyS 650 IGP XD), hozzá 1,7 és 2,4 GHz-es cerkák, 128 vagy 256 MB RAM-mal. :)
    Rengeteget szenvedtem azzal, hogy jó gyorsan rajzoljon a motor, így elértem, hogy a 915G-s karival szerelt gépen stabil gyorsasággal megy a gém.

    Itt egy semmitmondó ingame kép: http://adamstech.uw.hu/proofps_1.jpg
    Ez régebbi, azóta van HUD is és kiírja a golyók számát a kijelzőn is.

    Nemsokára letölthetővé teszem.
    Ja, és nem multiplayer, csak single player, botok ellen.

    Viszont tanácsokat kérnék egy nagy problémához.
    A mozgások FPS-függetlenek, tehát ugyanúgy mozog valaki 20 fps-sel mint 60 fps-sel. Itt viszont gond van, ugyanis minden frame-nél ütközést detektálok, de minél kisebb az fps, annál nagyobb elmozdulások kellenek, ami pontatlanabb ütközést eredményez, akár ki is eshetünk a mapról... Ezt szerintetek hogy lehetne megoldani? Minden gémben jól működik, én nem tudom, hogyan lehetne megoldani. Talán szálakkal.
    Azért is fontos, mert benti gépen csinál olyat (nem csak ennél a gémnél, Quake3-nál is), hogy megy pl állandó 60 FPS-sel, de aztán hirtelen megakad fél mp-re, ilyenkor persze mérek 0-fps-t, aztán máris kieshetek a pályáról. Ennek kivédésére kéne valami ötlet. Muszáj lenne-e szálakat használni? És ha igen, mit tegyek külön szálba, ütközés detektálást, vagy kirajzolást? Mert a kirajzolás a legnagyobb lassító tényező, de az ütközésnek kéne állandóan jónak lennie.

    Ötleteket köszönöm!

    Ja, és még valami: az about részbe mindenki userneve be fog kerülni szíves engedelmetekkel, aki hozzászólt/hozzászól a témához. :)
    Mutasd a teljes hozzászólást!
  • öööööööööö

    jaja
    és a tiedből van fent vmi a neten?
    vagy még nincs olyan állapotban, mint a CollerbladEé
    azthittem, h az övéről szól a cikk, mert szöveget nem olvastam és csak az az egy link volt...
    akkor neki is mondom
    amúgy 2d-3d egyaránt
    de csak amennyit enged a szabadidőm
    bár ha mutatsz vmit abból ami eddig kész van tudok bővebben válaszolni

    üdv
    Mutasd a teljes hozzászólást!
  • Szia!

    Gondolom nem nekem szántad ezt... az enyimé még nincs kész... [CollerbladE]-ét nézted meg, nem?
    Egyébként közzé fogom tenni a forráskódját, csak még megcsinálom az első olyan verziót, ahol mondjuk játszani is lehet.
    Grafika: milyen téren tudsz segíteni ezen belül? 2D/3D/stb.?
    Mutasd a teljes hozzászólást!
  • Hali!

    Tetszett a progi... Várható, h forráskódot közzéteszel? Lehetne belőle egy jó kis nyíltforráskódú projekt. Grafikában szabadidőben besegíthetek. (Ha méretezést, setupolást stb leírsz hogysmint)
    Mutasd a teljes hozzászólást!
  • bocs, előfordul. Szóval, mozgásérzékelős és kézzelkinyitós.
    Mutasd a teljes hozzászólást!
  • ezért mondtam, hogy a másik a kilincs alapú

    vagy a mozgásérzékelős a kilincs mozgását érzékeli?
    Mutasd a teljes hozzászólást!
  • Akkor 2fajta ajtó lesz, magátólkinyílós és mozgásérzékelős ajtó.


    Ööö, nálam ez ugyanaz.
    Mutasd a teljes hozzászólást!
  • de át lehessen ám állítani, mondjuk gombbal rajta (attól lesz magátólkinyílós) és távkapcsolóval messziről (akkor meg kilincs alapú) is
    Mutasd a teljes hozzászólást!


  • Akkor 2fajta ajtó lesz, magátólkinyílós és mozgásérzékelős ajtó.
    Mutasd a teljes hozzászólást!
  • Szvsz mindkettő.
    Mutasd a teljes hozzászólást!
  • Attól függ. A rohangálós akciós multiplayeresben nyíljon magától az ajtó, a single playeres gondolkozósban meg gombnyomásra (lehet rátárazni a benyitásra, fülelni, ilyenek )
    Mutasd a teljes hozzászólást!
  • Hello ismét!

    Egy idióta kérdés: szerintetek melyik a coolabb egy fps-ben:
    - odamész az ajtóhoz, és megnyomod az ajtónyitás bill.-t és akkor nyílik ki;
    - odamész az ajtóhoz, és magától kinyílik?

    Kíváncsi vagyok a véleményekre.
    Mutasd a teljes hozzászólást!
  • Szia Ivn!

    Köszi a múltkori gyors választ!
    Amit írtál üzenetben, kipróbáltam, de nem ment úgy sem. Úgyhogy inkább maradok a Free-nél, aztán mindig újraCreate-elem, de gondoltam, hogy nem kéne ezt csinálni, elég lenne a legvégén, no de mindegy, amúgy sem ez lesz a legnaygobb probléma a fejlesztés során. :)
    Mutasd a teljes hozzászólást!
  • Szia!

    Még gyorsan munkába menet előtt bedobom...

    HWND = THandle; HDC = LongWord; TEventKind = (EvPosition,EvHitpoint,EvTimer); TBlendMode = record sfactor,dfactor: GLenum; end; TRGBA = record r: byte; g: byte; b: byte; a: byte; end; PVertex = ^TVertex; TVertex = record x,y,z: GLfloat; nx,ny,nz: GLfloat; color: TRGBA; u,w: GLfloat; end; PFace = ^TFace; TFace = record vertices: array[0..3] of Word; tex: GLuint; end; PModel = ^TModel; TModel = record posx,posy,posz: GLfloat; sizex,sizey,sizez: GLfloat; anglex,angley,anglez: GLfloat; scaling: word; blended: boolean; blendmode: TBlendMode; doublesided: boolean; visible: boolean; vertices: TList; faces: TList; end; TCamera = record posx,posy,posz: GLfloat; anglex,angley,anglez: GLfloat; fov: GLdouble; aspect: GLdouble; zFar,zNear: GLdouble; end; PEvent = ^TEvent; TEvent = record kind: TEventKind; done: boolean; factor: GLfloat; sizex,sizey,sizez: GLfloat; end; TWorld = record Objects: TList; Events: TList; Camera: TCamera; Skybox: TModel; hasSkybox: boolean; end; var dc: HDC; rc: HGLRC; xndready: boolean = false; pfd: pixelformatdescriptor; iformat: integer; event: PEvent; vertex: PVertex; face: PFace; model: PModel; world: TWorld; f: text;

    Tudom, hogy Free-t lehetne használni, de azért így próbáltam, mert a helpben úgy volt, hogy minden elemet, mármint ahova mutatnak, Dispose()-zal felszabadít, aztán Free-vel magát a listát intézi el, de gondoltam, nem lenne szükséges. Na mindegy, asszem Free lesz a dologból. Ereddtileg úgy lett volna, hogy csak a legvégén használnék Free-t, menetközben, ha csak az ojjektumokat akarom törölni, akkor nem...

    Szerk.: nézzétek el nekem, hogy rekordokat használok osztályok helyett, direkt csináltam így, ez nem jelenti azt, hogy nem tudonék osztályt használni, de így pár karakterrel gyorsabb az írás.
    Mutasd a teljes hozzászólást!
  • Jó lenne látni a deklarációkat is, mert ha a model osztály, azt Free-zni illene, és nem disposeolni.
    Mutasd a teljes hozzászólást!
  • Jah, és mikor segíteni valaki nekem a fenti problémámban?
    Mutasd a teljes hozzászólást!
  • Szia!

    Letöltöttem a 0.5-ös és az utóbbi verziót, és az utóbbi akadt rendesen, optimalizáljál rajta kicsit!
    Egyébként gratulálok hozzá, végül is a 0.5-ből sejtem hogy mien, az nem akad, de ez 3-4 fps-sel megy.
    Gépem:
    PIII 600MHz Coppermine mag 256kB L2 cache,
    256 MB RAM,
    Geforce 3 Ti200 64MB vidkártya, ezek a fontosak. Ehh, használj display listet vagy húzd be a pálya geometriáját a VRAM-ba.
    Mutasd a teljes hozzászólást!
  • Hi

    Jah tényleg elírtam bocsika..
    Angolból látszik milyen pro vok :D

    Bye
    Mutasd a teljes hozzászólást!
  • Az angol mondat elég kötetlen, belefér (amúgy én lehet, hogy ilyet csináltam volna: Fistful Person's Shout - egy öklömnyi személy üvöltözése)
    &Ond;
    Mutasd a teljes hozzászólást!
  • Okol ember uvoltozes? :S
    nem eleg nekem ehhez az angolom.

    Tyrael
    Mutasd a teljes hozzászólást!
  • Szvsz nyelvi játék. Annak viszont nem rossz
    &Ond;
    Mutasd a teljes hozzászólást!
Címkék
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd