Nazad na sajt
EN SR

Dragutin Sredojević

Programer igara i engine sistema

Fizika · Grafika · Multiplayer

Programer igara i softvera sa preko osam godina praktičnog iskustva. Pravim najzahtevnije delove igara od nule, uključujući fiziku u realnom vremenu, sopstveni rendering i multiplayer, najčešće u Unity-ju sa C#-om, kao i u C-u i C++-u. Projekte vodim sve do objavljivanja. Uz to završavam studije mašinstva, koje mi daju jak temelj u numeričkim metodama i simulaciji.

Veštine

Jezici
C#, C, C++, Python, JavaScript, PHP
Engine i alati
Unity (Jobs, Burst, IAP), Git, Blender, Photoshop, Illustrator
Grafika
OpenGL, GLSL shader-i, sopstveni rendering u realnom vremenu
Fizika
dinamika krutih tela, detekcija kolizija (GJK, Minkowski), numerička integracija
Networking
Photon, Unity Netcode, ENet, UDP, sopstveni mrežni slojevi
Inženjerstvo
MKE analize, numeričke metode, CAD/CAM, automatsko upravljanje

Izabrani projekti

Igra bilijara Solo · Unity · C# · Android

Kompletna igra bilijara koju sam sam napravio i objavio za Android. Koristi sopstvenu fiziku kugli izvedenu iz jednačina kretanja, responzivno nišanjenje i UI prilagođen i portretnoj i pejzažnoj orijentaciji. Napravio sam i mali editor za pravljenje nivoa, dodao prodavnicu takova i optimizovao sve da drži stabilan framerate na različitim telefonima.

Billiard Template Unity · C# · Jobs · Burst

Event-driven engine za fiziku bilijara objavljen na Unity Asset Store-u. Koristi Unity Jobs i Burst kompajler za brzu višenitnu simulaciju, uz optimizacije inspirisane komercijalnim engine-ima. Dolazi sa dokumentacijom i ima stabilnu bazu korisnika.

Impulse C# · physics engine · detekcija kolizija

Physics engine za kruta tela koji pišem od nule. Radi narrow-phase detekciju kolizija pomoću GJK nad Minkowski razlikom za konveksne oblike, a kontakte rešava solverom zasnovanim na impulsima. Cilj je razumevanje simulacije u realnom vremenu iz osnova.

Graphics Engine C · OpenGL · GLSL

Mali engine za grafiku u realnom vremenu, napisan od nule u C-u sa OpenGL-om za predmet Računarska grafika. Demo prikazuje robotsku ruku u osvetljenoj 3D sceni i njen pun opseg kretanja.

Snap Network C# · ENet · UDP

Mrežni sloj niskog nivoa za multiplayer, izgrađen na ENet-u preko pouzdanog UDP-a. Koristio sam ga za istraživanje snapshot-a i sinhronizacije stanja za brze igre u realnom vremenu.

Chess Engine C# · bitboard-ovi · pretraga

Šahovski engine sa generisanjem poteza i pretragom. Pisanje me je naučilo mnogo o optimizaciji niskog nivoa, bitboard-ovima i kodu kritičnom za performanse, i koliko taj rad znači za AI u igrama.

Iskustvo

Frilens programer igara i softvera · Samostalno
2017 do danas
  • Isporučio gameplay, engine sisteme i alate po meri za klijente.
  • Vodio projekte od prvog dizajna kroz fiziku, rendering i networking, pa do optimizacije, dokumentacije i objavljivanja.
  • Napravio i prodavao komercijalne template-e na Unity Asset Store-u: bilijar, proceduralni teren, multiplayer survival, neuronske mreže.

Obrazovanje

Mašinski fakultet, Univerzitet u Beogradu
2019 do 2026 (očekivano)
Mašinsko inženjerstvo (osnovne akademske studije)
Predmeti iz MKE analize, numeričkih metoda, računarske grafike, CAD/CAM-a i automatskog upravljanja.

Jezici

Srpski (maternji) · Engleski (tečno)