Farketmez istediğin dili kullan ama C ve C++ bu işin ana noktası diye söyledim. Sen Java kullan sorun yok.
Oyun motoru yapmak zaman kaybı. Genelde niş bir iş yapanlar ve ekibi olanlar yöneliyor. Yada oyun motoru yapayım hevesinde olanlar.
Oyun yapmanın temelini öğren. Render sistemi yaz, gui çiz, fizik simule et. Ama bunları yaparken oyunun belli olsun ve oyunun için bunu yap.
Oyun 2d ise 3d render sistemine gerek var mı? Yok.
Gui editor lazım mı? Yok
Her fiziği eklemek lazım mı? Hayır.
Yani kısaca oyun altyapısını yap, ama genel oyun motoru yapma.