SFML

    SFML

    Am vrut sa ma apuc si eu de ceva programare in ferestre, sa mai evoluez de la good ol' console, asa ca am intrebat pe cativa prieteni mai versati in ale pro­gra­marii cum sa ma apuc de asa ceva. Destul de unanim au zis: SDL pentru ca ii bine documentat, exista multe tutoriale pe net, si ii stabil si rapid. Zis si facut, bazandu-ma pe prietenul meu Google, am gasit tutoriale si am inceput sa le parcurg. Dar ceva nu imi placea la SDL. Nu pot sa zic exact ce, dar in general cum se fac suprafete noi, cum se deseneaza, etc. mi s-a parut greoi. Dar s-ar putea ca doar tutorialul sa fi fost devina.

    Dar, intro zi am citit pe siteul unui prieten, ca primul lui program l-a facut in C++ cu SFML. Let's see what that is. Hmmm, another media library. Quick, google SDL vs SFML. Hmmm, SFML mai modern, object-oriented, suport pt OpenGL inclus. Niiiice. Let's try it out. Cum IDE-ul folosit de mine, MinGW Developer Studio nu imi placea pentru ca avea un Auto-Suggest varza, am cautat un altul. Open-source powa' friends suggested NetBeans, pro-Microsoft friends Visual Studio. Cum ma ocup si web­de­vel­op­ing, asa un pic, am zis sa instalez Visual Studio 2010, ca asta are suport si pentru alte limbaje.

    Dupa muuuult copiat de librarii si includeuri, si muuult umblat prin setarile de linking ( seriously, de ce nu face nimeni un "in­staller" pentru librarii? sa copieze automat fisierele sigur ii banal, iar de umblat prin setari... I'm sure it can be done) am inceput sa fac tu­to­ri­alele de pe siteul SFML. Totul merge bine pana ajung la partea de graphics cu libraria lor, cea cu OpenGL a mers bine. Compileaza bine programul dar da un crash imediat. Google nu zice nimica. Hai sa mai descarc odata. Nope, nu merge. Apoi am avut idea de a incerca sa imi compilez eu libraria, da' daca probleme ii ca eu lucrez in Visual Studio 2010, iar libraria oferita de ei este pentru 2005/2010. And it wooorked. Si am terminat cu succes tu­to­ri­alele SFML, mai putin cele audio si network, peste care doar m-am uitat, deoarece nu planuiesc sa le folosesc in prima parte de facere a jocurilor mele superbe  ( Tetris, Snake, etc etc) :D.

    Sintaxa imi place mult mai mult decat la SDL, pentru ca este complet object oriented. Si nu trebuie sa ma complic cu chestii gen blitt-ing pentru a afisa ceva pe ecran. Afisarea de forme, text si imagini ii suuuuper simpla, iar deplasarea camerei si zoomul se face cu 4 linii de cod. In SDL tre un picut mai mult decat atat. Sa nu mai vorbim de suport pentru OpenGL. In SFML se poate instanta direct, in SDL trebuie incluse alte librarii. Licenta SFML este complet libera pentru orice fel de proiect, pe cand SDL este LGPL, cu lim­i­tati­ile acesteia.

    Now, off to work... like a good coding monkey.