kedd, március 11, 2025

az játék előrehaladottáról

Megint tettem fel új vidiót.

Végre fut a játék windowson, kicsit többet tartott ez a dolog mint először számítottam rá, de hát ki kellett operálni nem csak a grafikus absztrakciót, de a memória menedzsert meg egy csomó más dolgot is. Azért döntöttem így, mert amit eddig használtam (The Forge), nem volt a legjobb választás. Nem nagyon foglalkoznak azzal, hogy stabil legyen az API (mondjuk nekik, akik ebből élnek, lehet, hogy ez nem is igazán szempont, mert mindig megfizettethetik az átállást az új API-ra), ráadásul a speckó memória menedzser és STL jó ötlet elméletben, de gyakorlatban akkor minden libraryt kell portolni a rendszerre, ami nem túl nagy ötlet. Ráadásul nem hiszem, hogy olyan sok sebességet köszönhettem nekik, szóval mindenből a standardot kértem most és ezzel így is fogok maradni. Szerencsére az SDL fejlesztők nagyon aktívak, ez a GPU absztrakciójuk is elég érthető (a régebbi bonyolultabb volt, lehet, hogy gyorsabb, de csak deszkriptor managementből írtam legalább két verziót amíg rájöttem, hogy kár vele törődni, megy az anélkül is, a sebességhez az okos kézi batching a kulcs. Szóval egy csomó kódot kidobtam, végre standard imgui-t is integráltam, meg lua-t is, ki kell próbálnom, hátha végre azt is tudom debuggolni. Egyébként az új ubuntumon már a shader debug is megy RenderDoc-kal, nagyon jó cucc, kár, hogy nem most kezdem a projektet, most mindent elég jól értek és mennek a toolok is mint a karikacsapás. Igaz, azt hiszem, ma már Rust-ban kezdenék neki Bevy-vel.

Na mindegy, szóval még rengeteg dolgot meg kell csinálni, most az a terv, hogy először kiadható állapotba hozom a játékot, tehát mindent megcsinálok, kivéve a pályák generálását és utána még amennyi idő marad, azt pályagenerálásra szánom. Persze, ha marad idő, meglátjuk. Ez az egész dolog nem volt túl vidám, mert bár nem vagyok az a típus aki szerelmes a kódjába, azért mindig próbáltam minél többet megtartani, néha ez rendesen az utamba állt. Aztán persze végül csak kinyestem mindent. :) Poén, de most megint rájöttem, hogy dolgozhatok ramdisken is, hogy gyors legyen a linkelés, már nagyon régen csináltam ilyent, még amikor a 486-osba végül lett 8 mega ram és 4-et ramdisknek használtam amikor djgpp-vel kezdtem aprítani. Csak most 4 giga ramot használok ramdisknek a 32-ből, így másfél perc alatt a nulláról megvan a fordítás és linkelés, gcc-vel, a clang gyorsabb lenne, de annak nem látja a debugger a változóit a watch-ban, szóval gcc-vel maradok egyelőre, de talán majd a végén clanggal fordítom le, Linuxon persze, Windowson VS 2022 Community Edition-t használok, azt hiszem ez az utolsó.

Ja igen, egyébként az árnyékokat kiszedtem, meg az animációkat is, valószínűleg kimaradnak a játék első verziójából, de azért csinálom így a dolgokat, hogy nyugodtam fejlesztgethessem életem végéig, szóval majd valamikor visszakerülnek. Na most ennyi, nem tervezek minden kis apróságról blogot írni, lehet, hogy a következő bejegyzés már arról lesz, hogy all systems go. Menük, save/load, level progresszió, hangok, ezek amik nagyjából hiányoznak. Lehet, hogy a mentéshez integrálom az sqlite-t. :)

Nincsenek megjegyzések: