Bir Open Graphics Library® (OpenGL®) oyun motoru, özel bir uygulama oluşturmak için üzerine inşa edilebilecek tamamen uygulanmış bir çerçeve sağlayarak video oyunlarının oluşturulmasını kolaylaştıran bir programlama kütüphanesi veya başka bir yazılım koleksiyonudur. Herhangi bir OpenGL® oyun motorunun temeli, üst seviye programlama mantığı ile düşük seviye grafik donanımına erişen OpenGL® kütüphaneleri arasındaki arayüzdür. Bazı motorlar öncelikle bulanıklaştırma, ışık haritaları veya özel gölgelendiriciler gibi efektler için optimize edilmiş işlevler ekleyerek özel grafiksel özelliklere ve algoritmalara kolay erişime odaklanır. Daha yaygın olarak, bir OpenGL® oyun motoru, üst düzey kütüphaneler, kodlama dilleri ve hatta özel geliştirme ortamları aracılığıyla çeşitli işlevsellik seviyeleri ekler. Farklı OpenGL® oyun motorlarının bazı özellikleri arasında kullanıcı girişi rutinleri, gölge oluşturma, grafiksel bir kullanıcı arayüzü (GUI) çerçevesi, ağ desteği, fizik ve yumuşak animasyonlar için gelişmiş zamanlama mekanizmaları bulunur.
OpenGL® kullanan oyunlar oluştururken, ister iki boyutlu (2D) isterse üç boyutlu (3D) olsun, çoğunlukla statik OpenGL® kod kütüphanelerini dinamik oyun ortamına entegre etmek için adil bir miktarda programlama kodu yazılmalıdır. nesneler değişir ve taşınır ve kullanıcılar sanal dünyayla etkileşime girebilir. Bir OpenGL® oyun motorunun temel amacı, bu tip kazan plakası kodunu yeniden yazma ihtiyacını ortadan kaldırmak ve bunun yerine bir oyun oluşturmak için tutarlı ve yapılandırılmış bir çerçeve sağlamaktır. OpenGL® yalnızca bir cihaza grafik görüntülemek veya işlemek için işlevler içerir; bu nedenle, bir sahne içinde hareket eden veya bir sahneden eklenebilen veya silinebilen nesnelerin birleştirilmesi için bir yol geliştirmek de dahil olmak üzere tüm oyun mantığının bu çekirdeğe sarılması gerekir. Dinamik grafik nesneler için OpenGL® kullanan bir yapı genellikle sahne grafiği olarak bilinir ve birçok OpenGL® oyun motoru uygulaması için temel oluşturur.
Bir OpenGL® oyun motorunun geliştiriciler tarafından kullanılmasının bir başka nedeni de, bir oyunun farklı parçalarını tek bir çerçeveye entegre etme ihtiyacını ortadan kaldırmaktır; bu işlemin doğru şekilde yapılması uzun zaman alabilir. Bir klavyeden kullanıcı girişi, evet ya da hayır seçeneklerini belirleyen bir pencere gibi GUI unsurları ve hatta bazı popüler grafik kartlarının optimizasyonları bile bir OpenGL® oyun motoruna dahil edilebilir ve geliştiricilerin donanım özelliklerine göre yazmalarını gereksiz kılar. kod kendileri. Bir takas olarak, bu tür karmaşık yeteneklere sahip motorlar genellikle çok pahalıdır veya bazı açık kaynaklı oyun motorları mevcut olmasına rağmen ticari kullanım için çok kısıtlayıcı lisanslar taşır.
"OpenGL® oyun motoru" terimi aynı zamanda özel derleme dosyalarının çoğunu veya tümünü kaldırmış ve yalnızca derlenmiş programlama kodunu bırakan tamamlanmış bir bilgisayar oyununa atıfta bulunabilir. Bu, kullanıcının oyun grafiğiyle yüklenen özel grafikler, haritalar ve bazen komut dosyası oluşturulmuş olaylar oluşturmasına olanak tanır. Oyun genellikle bu tür oyun motorunda büyük ölçüde değiştirilemez ve bunun yerine kullanıcıların bağımsız bir orijinal oyuna karşı özel seviyeler ve içerik oluşturmaları için bir platform görevi görür.


