| PentruCaAutomobile a întrebat:

Nu de mult am inceput sa invat C++ si sincer imi place, dupa ce il invat bine, probabil voi invata si Java. Dar nu inteleg exact cum functioneaza aceste limbaje de programare ca rezultatul sa fie un joc/program. Un joc/aplicatie se face intr-un singur limbaj de programare sau se combina, si cum? Va rog, dati mai multe detalii.

4 răspunsuri:
| MenInShadow a răspuns:

Din cate stiu eu, nefiind expert, doar din cate am auzit si citit putin, un joc, mai complex, este format din multe, multe limbaje, nu doar unul singur, fiecare limbaj fiind necesar pentru ceva anume.
De exemplu, daca vrei sa faci un joc, cu orice limbaj, trebuie sa te gandesti inainte ca ai nevoie de niste personaje, care de obicei se realizeaza cu alte programe, photoshop sau altele daca vrei sa fie 2d si programe complexe, daca vrei sa fie 3d.
Apoi, ai nevoie de sunet, asta in cazul in care vrei, ai nevoie si de o melodie pe fundal, care ar fi bine sa fie originala.
Si multe altele, deci, pe scurt, ai nevoie de multe elemente ca sa faci un joc, fie el complex sau mai simplu.
De programe nu stiu, inca nu am ajuns la C sau C++ ca sa ma interesez despre cum se fac programele, insa am spus tot ce stiam (putin) despre realizarea jocurilor.

| RAY a răspuns:

Eu de ceva vreme urmaresc tutoriale video https://www.youtube.com/user/tutorialevideoo sunt foarte bune si html, css de toate imi place e fain sa poti crea ceva nou

| Radu284 a răspuns:

Uneori se fac intr-un limbaj, uneori in mai multe. Pe Android, de obicei in Java si eventual C/C++, daca vrei ceva care sa ruleze nativ.

Pe PC, de obicei c/c++ si un limbaj de scripting.

| CinevaNou a răspuns:

Poti folosi limbajele ca sa implementezi un motor grafic software, adica sa calculezi tu pozitia si culoarea pixelilor in functie de diferite formule si teorii, asa cum faceau jocurile vechi pe vremea cand nu toate pc-urile aveau placa video.
http://joshbeam.com/articles/simple_line_drawing/
Daca vrei sa faci 3d in software, devine mult mai complicat.
http://blogs.msdn.com/......ering.aspx

Alta optiune ar fi sa folosesti directx/opengl, care au functiile astea deja implementate pentru tine, tu doar zici coordonatele "colturilor" si pozitia camerei, iar el iti deseneaza ce trebuie. Aceasta metoda e de preferat pentru ca foloseste placa video, deci o sa mearga mult mai repede decat daca faci tu in software.
http://www.directxtutorial.com/LessonList.aspx?listid=9

Alta varianta(si cea mai buna) e sa folosesti un engine/motor grafic care e bazat pe directx/opengl. O sa iti usureze viata foarte mult. Practic ei au functiile directx in functiile lor, si ajungi sa apelezi mai putine functii ca sa ajungi la acelasi rezultat.
http://irrlicht.sourceforge.net/tutorials/
Daca alegi varianta asta nu e nevoie sa stii prea multe chestii despre directx, pentru ca totul e "ascuns" in functiile lor.

Iti ajunge si un singur limbaj sa faci un joc. Poti folosi doua limbaje daca ai nevoie de scripting in joc. Asa cum garry's mod foloseste lua pentru diferite addon-uri.
Un motiv bun sa folosesti scripting in joc e ca nu trebuie sa recompilezi mereu ca sa adaugi chestii noi, ci doar scrii scriptul iar programul facut de tine il parseaza si executa.
Pentru shaderi si efecte speciale ai alt limbaj, numit HLSL.
Dar astea is deja chestii foarte avansate. E de ajuns sa te obisnuiesti sa folosesti irrlicht sau alt motor de genul, pentru inceput.