Keresés

Új hozzászólás Aktív témák

  • urandom0

    őstag

    válasz Pikari #38 üzenetére

    Megnézel egy rendes tutorialt, ami natív kódon alapszik, és létrehozod az alapján az opengl-re alkalmas ablakodat, kb soha életedben többé nem kell hozzányúlnod.

    Igen... és mindezt 3 platformra (merthogy a fejlesztés Linuxon+Windows-on zajlik, a végeredménynek pedig Androidon kell futnia). És megírod mellé (szintén mindhárom platformra) az ablakkezelő eseményeket, ami főleg Androidon izgalmas, ahol teljes kontextusvesztés van, ha a felhasználó átlép másik appra. Ez már messze nem a "megnézel egy tutorialt" szint, hanem ez már az a szint, hogy ismered a Win32-t, ismered az X11-et, ismered a Cocoa-t (ha Mac-re is ki akarod adni a játékot), tudsz fordítani mindegyikre, ismered a C-t, a GCC-t, a MINGW-t, az Objective-C-t, a Win32 API-t, a GTK-t... és a végeredmény TÖK UGYANAZ lesz, mint ha fognád a GLFW-t/LWJGL-t, és egyszerűen használnád. Legalábbis elméletben ugyanaz lesz, a gyakorlatban valószínűleg lassabb és bugosabb. Arról nem is beszélve, hogy ha jön egy újabb Android verzió, ahol mondjuk valami apróság változik az appok életciklusában (volt már rá példa, nem is egyszer), akkor mehetsz vissza low level szintre, hogy legalább az intent-ed megjelenjen. Vagy ha mondjuk X11 helyett valaki Wayland-en szeretné futtatni, azt is meg kell oldanod... rengeteg plusz munkát vesz magára az, aki erre adja a fejét, teljesen értelmetlenül.

    A több ezer polygon nyilván csak egy random szám volt részemről, a lényeg az, hogy a Java is van elég gyors ahhoz, hogy egy bizonyos határon belül lehessen benne játékot fejleszteni. Azt nem állítom, hogy eléri a C sebességét, de nagyon sok mindenre bőven alkalmas így is.

    Backface culling eleve ott az OpenGL-ben, távolság ellenőrzés pedig attól függően van az engine-ben, hogy mennyire low level. Nyilván, ha magad írod az engine-t, akkor ezt is magadnak kell megírnod, meg a teljes fizikát, ami megint rengeteg plusz idő tud lenni, attól függően, mennyire bonyolult a fizikád. Az én játékomban elég egyedi, de viszonylag egyszerű fizika van, így nem használtam külön libet hozzá. De ha komolyabb fizika kell, akkor behúzza az ember mondjuk a Box2D-t, és akkor van merev test fizika, ütközéskezelés, joints kezelés, bounce, gravitáció, stb.

Új hozzászólás Aktív témák

Hirdetés