← Laika līnija
2004–2006 · C++, OpenGL un savi dzinēji

Physics 2D

Kursa darbs, kas izauga par mana bakalaura darba 3D fiziku uz Steel Engine: pašam savs fizikas dzinējs un pilnvērtīga spēle uz tā, iedvesmota no Elasto Mania un Half-Life 2. 2005. gada kursa darbs „Collision Detection” prof. Paula Ķikusta vadībā izvirzīja mērķi: simts cietu daudzstūra ķermeņu reāllaikā, kas nekad neizlien cits caur citu pat pie zema kadru ātruma. Tajā apskatīts, kā to darīja spēles — ierobežojošie taisnstūri Doom un Mario, režģa hešošana Warcraft, daudzstūri Quake un Havok —, un pievienotas manas paša metodes: cilindru metode, kas kustīgu, rotējošu ķermeni telpā „2D plus laiks” aplūko kā savītu cilindru, lai sadursmi laika solī atrastu precīzi, secīgais sadursmju noteikšanas algoritms un patvaļīga daudzstūra inerces moments.

C++STLOpenGL

Video

Attēli

No kursa darba: zvaigzne, kas kustas un griežas, zīmēta telpā „plakne plus laiks”, kļūst par savītu cilindru. Sadursmju noteikšana pārvēršas par šādu cilindru krustošanās vietu meklēšanu.