C++ t van értelme játékfejlesztéshez tanulni?
Meg poénból bemásolom már 850. alkalommal is egy korábbi válaszomat:
Szépen sorjában így lenne illő haladnod:
- Mi az a programozás, mire jó, miért jöttek létre a számítógépek?
- Tanulsz egy kis algoritmizálást, hogy pszeudokódban hogyan lehet megírni egyszerűbb programokat, megtanulsz egy-két vezérlési szerkezetet (ez ahhoz kell, hogy segítse a programozói gondolkodás kialakulását)
- Elsajátítod az egyszerűbb adatszerkezetek elvi működését (tömb, láncolt lista, verem, sor, hash tábla stb.)
- Választasz egy programozási nyelvet
- Hello World
- Kifejezések, utasítások
- Változók
- Egyszerű beolvasás konzolról
- Vezérlési szerkezetek
- Előre megírt függvények használata
Most tartunk ott, hogy meg tudsz írni egy "gondoltam egy számot, találd ki" játékot
- Függvények, eljárások írása
- Karakter/stringkezelés
- Fájlkezelés (szöveges és bináris)
Már meg tudsz írni egy Legyen Ön is Milliomost konzolosan
- OOP alapelvek megismerése
- Eseményvezérelt programozás, egyszerű ablakos szoftverek készítése
- XML, JSON állományok létrehozása és feldolgozása
- Egy RDBMS rendszer megismerése (pl. MySQL, Microsoft SQL Server, Oracle...)
- Több szálon futó programok, párhuzamosítás
- Hálózati alapismeretek elsajátítása, főleg TCP és UDP
- Hálózaton kommunikáló programok írása
Már mehet a felhasználóbarát ablakos kvízjáték hálózaton multiplayerben
- Matematikai ismeretek elsajátítása, vektorok, mátrixok, koordinátageometria, koordinátatranszformációk mátrixokkal
- Számítógépi grafikai ismeretek, hogyan rajzol ki a gép egy pontot, vonalat, görbét, Window to Viewport transzformáció, 3D-s objektum leképezése 2D síkra, stb.
- DirectX vagy OpenGL közül választasz egyet
- Megpróbálod alkalmazni a grafikai ismereteidet
- Felhasználói interakció kezelése
- Textúrázás
És, már mehet a már immáron grafikus kártyát kihasználó multiplayer Pong vagy valami platformjáték
- Egyszerűbb 3D-s objektumok rajzolása, animálása
- Összetettebb 3D-s világ létrehozása
- Megpróbálsz megírni egy egyszerűbb grafikus motort (hogy lásd a lelki világát mondjuk a CryEngine-nek)
És már meg tudsz írni elméletben egy WoW-ot (csak épp egyedül kevés vagy hozzá).
Van értelme.
A 2D-s egyszerű játék megalkotása pedig csakis tőled függ. Ha tényleg nagyon nyomod a cuccot és van hozzá affinitásod, akkor néhány hónap, ha kevésbé érdekel, akkor évek.
G.
Érdemi szinten 2-3 év a reális becslés.
Nyilván egy netes tutorialt már 1-2 hónap után át tudsz alakítani magadnak.
A Unity3D pedig JS, C# script-el tudod programozni.
Had válaszoljak ln is, egy kicsit más nézőpontból:
Szerintem itt mindenki abbol indul ki, hogy fogalmad nincs a számítógépekről és a programozásról, semmiről... pedig a kérdésed nem erről szól.
Én úgyvélem, akár az első kisebb egyszerű önálló programok után vágj bele egy relative statikus egyszerű 2d logikai játékba, ilyen táblás játék, puzzle, szókereső, akár neten talált példák alapján.
Saját magadnak kódot is "lophatsz", nonprofit célra miért ne.
Megkímél a favágómunkától, és attol, hogy egyszerre kelljen a nyelvi elemeket, a használati környezetet és a gépiesen monoton algoritmusokat is azonnal készségszinten hazsnálnod.
Itt az a lényeg értsd és tudd mi miért van ugy, egy fogalmatlanul lemásolt kód nyilván nem pálya, abbol nem lesz semmi, nem tanulsz belőle.
De beszélni is ugy tanulunk, szolgaian utánozunk másokat eleinte, sokkal normálisabb és szórakoztatóbb ez, mint hülye algoritmusokat biflázni több oldalas száraz leírásokat olvasni minden nyelvi elemről, meg ilyenek.
A 3D saját motor, meg ez a szint az álmok birodalma, egy olyan távlati cél, mint egy saját űrrakéta kb.
Legtöbben sosem érik el, de ettől még kitűnően tudnak más dimenzióban feladatokat megoldani.
Egy ilyen szintű feladat mögött elképesztőan kemény matek is van, ha a felsőfokú matek és annak készségszintű alkalmazása nem megy -itt nekem is vannak azért fehér foltok pl- akkor csak szenvedni fogsz egy ennyire bonyolult feladattal.
Egy kész 3D motor optimális kihasználásához is ismerned kell az alapokat, de az teljesen más szint, mint önállóan létrehozni mindent.
Ha a távoli végcélod, hogy professzionális játékfejlesztő "guru" legyél, akkor majd ugyis kelleni fog, de az egy más szakasz lesz majd, erre gondolni most olyan, mintha ovodában arrol akarnál gondolkodni, mi lesz nyugdijas korodban..majd..mindent a maga idejében.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!