Apakah mungkin menambahkan dukungan untuk pembuatan hanya file header untuk GLAD? Maksud saya, mirip dengan perpustakaan stb .
Akan sangat berguna untuk memasukkan glad.h ke dalam proyek dan menghindari modifikasi pipeline.
Ini dia contoh yang sedang saya kerjakan; Saya membuat file header GLAD saja sendiri secara manual.
Saya pikir ini adalah ide bagus. Saya tidak pernah benar-benar ingin memasukkan file-file senang dengan sisa kode saya, tetapi alternatif untuk saat ini hanya sedikit terlalu rumit.
Saya pikir kesederhanaan adalah salah satu fitur dari kesenangan yang membuatnya berdiri di atas istirahat (seperti GLEW). Memiliki hanya file header untuk diimpor akan membuatnya lebih sederhana dan lebih baik.
Namun, saya membayangkan mengkompilasi seluruh file yang dibuat @raysan5 membutuhkan waktu, terutama jika disertakan dalam beberapa file. Cukup sering saya hanya ingin seperti GLuint yang dideklarasikan untuk file header saya. Mungkin glad_types.h
akan bagus. Secara pribadi saya tidak khawatir tentang banyak file, melainkan file .c
.
Hai @Shimmen , saya menggunakan versi senang profil inti OpenGL 3.3, awalnya, glad.h
sudah ~14K LoC dan glad.c
~7.6K LoC. Setelah disatukan, glad.h
adalah ~22K LoC dan waktu kompilasi dengan GCC 4.7.2 membutuhkan waktu sekitar 2-3 detik di dev workstation saya.
Saya sedang mempertimbangkan untuk membuat permintaan tarik. Apakah Anda ingin ini menjadi opsi untuk hanya memiliki file header dan haruskah itu menjadi default?
Hei, itu luar biasa!
Saya masih berpikir apakah opsi itu masuk akal, seperti yang ditunjukkan sebelumnya, file header akan sangat besar dan memperlambat proses kompilasi sedikit. Saya juga tidak yakin apakah memisahkan header menjadi beberapa file header adalah ide yang bagus.
Kemudian lagi, memiliki opsi mungkin tidak ada salahnya, opsi header-only tidak akan menjadi default.
Saya menggunakan alat web untuk hanya memilih ekstensi yang saya butuhkan (dasar OpenGL 3.3 Core) dan kemudian saya membuat file header saja; itu sekitar 5K LoC dan dikompilasi dalam milidetik (penundaan apa pun tidak terlalu mencolok).
Sebagai peringatan, cabang glad2 mendukung opsi hanya header sekarang!
python -m glad --out-path=build --api="gl:core=" --extensions= c --header-only
Praprosesor modern sangat cepat sehingga ketika GLAD_IMPLEMENTATION
tidak ditentukan, hampir tidak ada dampak kinerja.
Tambahan yang bagus @Dav1dde! Terima kasih banyak atas pembaruannya! :)
Adakah berita kapan fungsi ini akan tersedia di situs web atau kapan versi 2 diluncurkan secara resmi? Terima kasih!
Saya tidak memiliki ETA.
Jika Anda ingin bermain-main dengannya, cabang glad2 harus menghasilkan Kode-C yang berfungsi. API sedikit berubah: gladLoadGL
adalah satu-satunya cara untuk memuat konteks GL dan selalu harus melewati fungsi loader.
Saya berharap kami bisa mendapatkan pembaruan status kapan ini bisa sampai ke situs web. Saya suka layanan web! Saya pikir itu bagus! Dukungan hanya header akan membuatnya sempurna. Terima kasih!
http://glad2.dav1d.de saat ini meng-host cabang glad2, ini berfungsi tetapi tanpa API tetap. Glad2 hanya mendukung header. Jika Anda menemukan bug, saya senang untuk memperbaikinya.
Saya yakin saya menemukan beberapa masalah dengan ini:
__glad_gl_h_
harus ditutup di akhir file, tidak hanya setelah bagian glad.hinline
jika tidak, Anda melanggar ODR, yaitu tidak mungkin untuk memasukkannya lebih dari sekaliTerima kasih, ya hanya headernya saja yang masih perlu beberapa perbaikan.
@elmindreda mengarahkan saya ke (agar saya tidak lupa): https://github.com/nothings/stb/blob/master/docs/stb_howto.txt#L9
Bekerja di glad2.
Komentar yang paling membantu
Sebagai peringatan, cabang glad2 mendukung opsi hanya header sekarang!
python -m glad --out-path=build --api="gl:core=" --extensions= c --header-only