OPENGL megtanulása
2020-06-06T23:46:52+02:00
2020-06-07T09:51:18+02:00
2022-07-20T14:51:56+02:00
  • Nem lebeszélni akarlak az OpenGL tanulásáról, de az eredeti problémádat nem fogja megoldani. Bár elvben a videokártya maga is képes a helyes láthatóság kiszámolására, ez nem lesz túl gyors. (A pálya minden háromszögét már csak elküldeni a kártyának is sok idő lehet.)

    Ezt a "nagyok" is úgy csinálják, hogy először kódból végeznek egy "nagyjábóli" láthatóság-vizsgálatot, ami kiszűri a háromszögek jelentős részét. (Kizárhatod, ami a hátad mögött van és esetleg ami túl távol van. Ha zárt térben van a játékos, akkor kizárhatod azokat a szobákat, amikre biztosan nincs rálátás.) Csak a maradékot küldik el a videokártyának, ami aztán ki tudja szórni a képernyőn kívülre eső háromszögeket és (a z-buffer segítségével) a takarásban lévő részeket.

    Ehhez persze úgy kell tárolni a játékteret, hogy könnyen ki lehessen zárni a nagy részét. Ha egyesével mész neki a háromszögeknek, hogy mi merre van, akkor ugyanazt csinálnád, mint a videokártya, csak kevésbé hatékonyan. A részletekkel én sem vagyok képben, de azt tudom, hogy a BSP egy évtizedek óta bevált módszer zárt terek esetén. Hogy mi a szokás a szabad téren játszódó részeken, azt nem tudom.
    Mutasd a teljes hozzászólást!
  • Sziasztok !

    Én kínlódok a háromszög-szakasz metszépontjának a kérdésével.
    Sikerült a dolog, úgy értve, hogy az a része a programnak működik már, mégegyszer köszönöm HOSZA fórumtársnak a kódot !
    Elviekben el is értem a sikert, de gyakorlatban abbahagyom ezt az utat.  2-3e ponttal számítva is percek mire kiszámítja nekem, hogy melyik blockban, melyik háromszög látszódjon, vagy ne.

    Kb 30e pontnál még használható a qb64 _maptriangléja forgatással úgy, hogy ne kelljen foglalkozni azzal, hogy mi látszik, és mi nem.
    Arra kattantam rá, ahogy a videon is látszik, hogy különböző elemek véletlenszerűsítésével  más-más pályák jöjjenek létre. Pl házakat szeretnék generáltatni. (hidakat, kilátókat, tornyokat, dombokat, kerteket..tb) Random elrendezéssel.  Ahogyan azt a tornyot is lépcsővel, meg azt a teraszt lábakkal, random kijáratok, stb megoldottam.

    Tree_house_20200515

    Már ennek a 2 elemnek a véletlen variáásával fogjuk rá érdekes, élhető pálya jött létre. Mi lenne, ha még ezt fokoznám ? Majd később tárgyakat helyezni el benne, majd egy random-lineáris játékmenetet generálni. (ha ezt felveszem, akkor amaz megnyílik, stb). közben persze aktív ellenségek, mint a fülöpkés videóban.

    Fülöpkés-videó: 
    Fülöpke és az ellenállók V122


    Tehát ez volna az „álmom” :) Teljesen random összeállítana a program egy pályát, játékmenetet, és kétszer ugyan azt a játék nem tudna megismétlődni. Így ha jó a játék alaphangulata, akkor akárhányszor elő lehet venni.
    Egy olyan terebélyes pálya, amit szeretnék, az 100e ponton  felül lehetne leírni.  El is indítottam egy ilyen nagyságrendűt, hogy számítsa át, hát..napok…talán még 1 hétnél is több lenne csak annak a számítása, hogy a megjelenítéskor kevesebbet számoljon.
    Szeretném megtanulni az opengl használatát. Nem videókból, linkekből, hanem azt szeretném, hogy valaki olyan magyarázná el nekem, aki ért hozzá. Szerintem egy hozzáértővel eltöltött pár óra hasznosabb lenne, mint kínlódni linkekkel napokig, hetekig. Természetesen nem ingyen kérem. Nem sajnálok áldozni erre. Én minél gyorsabban szeretném megtanulni a  dolgot, nem tanulmányozgatni, meg kisérletezgetni, hanem úgy megtanulni, hogy én kérdezek, és választ kapok. Nekem ez az opengl egy eszköz lenne, egy hiányzó láncszem, hogy továbblépjek, hogy megvalósíthassam a fentieket.
    Ha valaki segít ,akkor az út ,és a pénz nem akadály, én nagyon örülnék ha valaki jelentkezne segíteni.
    Mutasd a teljes hozzászólást!
abcd