2D-3D render etme, carpisma mekanikleri, fizik motoru, networking, memory kontrolu, scripting ve yapay zeka, sinematikler, sahne dinamikleri, kullanici IO yonetimi ( gamepad - klavye - mouse vb ), ses mekanigi ( surround vs ), dil destegi gibi konularda oyun gelistiricilerine framework SDK si vermen gerekiyor.
Bunlarin yanisira farkli platformlar icin port destegi ( multiplatform support ), editor ( sahne/scripting editoru ), temel GUI destekli kod editoru vs de olusturup ship edebilirsin oyun motorunun yanisira.
Neredeyse her oyunda olmasi gereken temel konseptleri bir abstraction altinda toplarsan ve bir SDK altinda sunarsan oyun motoru yazmis oluyorsun.