Apakah aplikasi yang menggunakan versi lama OpenGL masih dapat berjalan di kartu yang lebih baru?


8

OpenGl 3.0 dan lebih tinggi memiliki perbedaan yang cukup besar dari versi yang lebih lama seperti OpenGl 2.x dan opengl 1.x dalam hal implementasi, apakah itu berarti aplikasi yang ditulis dengan versi lama dari opengl tidak akan berjalan pada komputer yang memiliki kartu video mendukung OpenGL 3.x dan lebih tinggi?

Maaf, jika ini bukan tempat yang tepat untuk menanyakan hal ini.

Terima kasih.

Jawaban:


2

Singkatnya: OpenGL 1.x masih akan didukung.

Secara teori dimungkinkan bagi seseorang untuk menulis implementasi OpenGL yang hanya mendukung 3.x dan lebih tinggi, tetapi mendukung hal-hal yang lebih lama memberi Anda begitu banyak aplikasi yang ada sehingga konyol untuk tidak mendukungnya.

Beberapa bagian dari pipeline OpenGL 1.x dapat diimplementasikan dengan cara yang tidak optimal (lambat), tetapi semuanya masih berfungsi. Driver ATI membuat pengambilan sangat lambat di beberapa titik, mendorong perubahan pada Blender, misalnya.

Di sisi OpenGL ES hal-hal sedikit lebih rumit. Saya tidak mengetahui ada contohnya, tetapi ES 2.0 dan seterusnya jauh berbeda dari ES 1.x sehingga mungkin beberapa perangkat tidak memiliki dukungan ES 1.x. Dalam kebanyakan kasus, perangkat keras ES2 + meniru ES 1.x dalam perangkat lunak (menghasilkan shader dengan cepat dan hal-hal menyenangkan seperti itu).


3

Saat ini tidak ada driver yang menghapus dukungan untuk versi OpenGL sebelumnya. Selain itu, sebagian besar juga menerapkan ekstensi kompatibilitas, yang berarti Anda dapat mencampur hal-hal lama dengan konteks OpenGL 3.2+ (pengecualian adalah Mac OSX, di mana hanya profil inti untuk OpenGL 3.2 tersedia - Anda masih dapat menggunakan barang-barang lama, tetapi tidak bersama dengan barang baru).


1
Apakah Anda mengatakan kode glBegin..glEnd tidak dapat dikompilasi di OSX modern?
Jari Komppa

@JariKomppa, ubah jawaban saya.
Tapio
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.