
Păi de ce atunci a fost imposibil pentru mine să le învăț pe ambele odată? Răspunsul s-a dovedit a fi unul foarte simplu. În primul rând DirectX și OpenGL au o sintaxă diferită una de alta, în orice caz mie așa îmi pare. În al doilea rând pentru a înțelege cum funcționează DirectX, trebuie de înțeles cum funcționează COM-urile. Eu nu am vrut să învăț COM-urile pentru a înțelege DirectX, am fost nerăbdător și vroiam cât mai rapid să trec la studierea API-ului, însă când am început să-l studiez, nu am putut să înțeleg multe, din cauză că nu cunoșteam cum funcționează un COM. OpenGL însă s-a dovedit a fi mai simplu de înțeles decât DirectX. OpenGL comunică cu programele prin intermediul unor funcții și a fost simplu de desenat primul meu triunghi acolo. Eu acum am în vedere versiunea 3.3 a lui OpenGL, deoarece am vrut să studiez deodată variantă modernă a lui, unde se folosesc shader-e și totul se poate de controlat așa cum dorești.


Deci după cum am scris mai sus, eu am ales OpenGL și C++, și am mai menționat că am încercat să fac un prototip de joc. Prototipul se numește FABE(de la face și cube). Ideea jocului este de strânge o față de "cub" să fie de aceeași culoare. Mai jos este un video care demonstrează rularea acestui prototip:
Prototipul a fost compilat în Visual C++ 2012. Pentru a crea fereastra și contextul lui OpenGL, am folosit GLFW și deja pentru ca să pot ușor opera cu funcțiile OpenGL, am folosit GLEW. Toate acele link-uri pot fi apăsate și puteți studia singuri fiecare lucru folosit de mine pentru a crea acest prototip.
Desigur nu are nimic din ceea ce se numește "Grafică", deoarece eu deja am mai scris că cunosc doar bazele la moment și nu știu să fac shading să pun diferite efecte și altele. La fel pentru ca prototipul să se socoată un joc, trebuie să aibă măcar un menu, ceea ce nu este în jocul meu.
La moment eu doresc să fac un mic motor pentru ca să pot să fac din acest prototip un joc. Source code-ul la acest prototip nu am inclus, voi include doar prototipul, pentru ca să probați jocul. Citiți README.txt înainte de a rula acest joc.
P.S. Jocul are muzică și sunet. Pentru aceasta am folosit OpenAL. În link-ul mai jos se află un fișier zip în care se află instrucțiunile necesare pentru a rula jocul. Eu multe nu am explicat aici, de aceea în următoarea mea postare, voi explica în detaliu cum funcționează acest joc și voi include și codul sursă al acestuia.