Efekti i animacije u grafici nisu jednostavne jer dolazimo opet do sinhronizacije sa video/frame buffer-om, zahtev je prost ali je kompleksna realizacija posebno ako hoćeš da pokriješ više nekih tipova objekata/kontrola, problem je što ne mogu da se koriste bloking funkcije tipa delay/sleep jer bi blokirao ceo thread zbog toga nego mora da se rasparča sve u segmente i da se osvežavanje scene i objekata u njoj radi sinhrono sa predvidjenim frame-rate osvežavanja ekrana.
Konkretno ako hoćeš stvarno sa grafikom da se poigraš u nekom trenutku ćeš doći do OpenGL za Desktop ili OpenGL ES (embedded) varijanta za RPi i slične.
Tu ti je direktan frame-buffer od video kartice dostupan, imaš teksture i 3D objekte ili 2D koji su opet renda u 3D samo je drugi pogled i dodatne mehanizme za pisanje C/C++ programa i shejderi za animaciju do mile volje da kombinuješ.
OpenGL bi valjalo svako da savlada ko se bavi kompjuterskom gradfikom, lično sam "donirao" neke alate i biblioteke u Khronos Group zajednicu, radio sam biblioteku za čitanje GLTF fajl formata i Java/Android parser koji koristi OpenGL ES da te formate "izrenda, animira i prikaže" na ekranu sa sve naprednim tehnikama renderinga poput PBR, Ray-tracing i slično.
GLTF je vrlo dobar format za te stvari, on nosi sve bitne stvari u sebi, teksture, 3D objekte, definicije animacija i same animacije objekata koje mogu da se učitavaju u run-time.
https://www.khronos.org/gltf/
https://github.khronos.org/glTF-Sample-Viewer-Release/
Konkretno ako hoćeš stvarno sa grafikom da se poigraš u nekom trenutku ćeš doći do OpenGL za Desktop ili OpenGL ES (embedded) varijanta za RPi i slične.
Tu ti je direktan frame-buffer od video kartice dostupan, imaš teksture i 3D objekte ili 2D koji su opet renda u 3D samo je drugi pogled i dodatne mehanizme za pisanje C/C++ programa i shejderi za animaciju do mile volje da kombinuješ.
OpenGL bi valjalo svako da savlada ko se bavi kompjuterskom gradfikom, lično sam "donirao" neke alate i biblioteke u Khronos Group zajednicu, radio sam biblioteku za čitanje GLTF fajl formata i Java/Android parser koji koristi OpenGL ES da te formate "izrenda, animira i prikaže" na ekranu sa sve naprednim tehnikama renderinga poput PBR, Ray-tracing i slično.
GLTF je vrlo dobar format za te stvari, on nosi sve bitne stvari u sebi, teksture, 3D objekte, definicije animacija i same animacije objekata koje mogu da se učitavaju u run-time.
https://www.khronos.org/gltf/
https://github.khronos.org/glTF-Sample-Viewer-Release/