Aplicație Multimedia de Învățare • Secretul vederii în Jocurile Video și Informatică
Una dintre cele mai importante formule din trigonometrie, pe care se bazează o mare parte din geometria analitică, este formula cosinusului diferenței a două unghiuri:
cos(a - b) = cos(a)cos(b) + sin(a)sin(b)
Deși la prima vedere pare doar un exercițiu de memorare algebrică, această formulă ascunde definiția Produsului Scalar (Dot Product) a doi vectori, un concept fără de care informatica grafică nu ar putea exista.
Să ne imaginăm că programezi inteligența artificială (AI) a unui inamic într-un joc video. Inamicul stă într-un punct pe hartă și privește într-o anumită direcție (să spunem că direcția privirii sale formează un unghi a cu axa orizontală). Personajul jucătorului se află într-o altă direcție (unghiul b).
Cum decide rapid calculatorul dacă inamicul îl "vede" pe jucător? Ar fi prea complicat și lent să traseze linii pentru fiecare cadru al jocului. Aici intervine magia formulei cos(a-b)!
Conform formulei, rezultatul acestui calcul este exact cos(a-b), unde (a-b) este unghiul dintre inamic și jucător. Dacă rezultatul este apropiat de 1 (de exemplu > 0.7), înseamnă că unghiul este mic, iar jucătorul se află direct în câmpul vizual al inamicului. Boom! Inamicul atacă!
Dacă valoarea cos(a-b) obținută din înmulțirea coordonatelor este suficient de mare, calculatorul știe că unghiul dintre inamic și jucător este mic, deci jucătorul a fost observat.