ฟรีกลูท
| ฟรีกลูท | |
|---|---|
โลโก้อย่างเป็นทางการ | |
| นักพัฒนา | ปาเวล ดับเบิลยู. ออลสตา |
| เวอร์ชันเสถียร | 3.8.0 / 16 พฤศจิกายน 2025 |
| เขียนเป็น | ซี |
| ระบบปฏิบัติการ | ข้ามแพลตฟอร์ม |
| พิมพ์ | API |
| ใบอนุญาต | กลุ่มพันธมิตร X |
| เว็บไซต์ | freeglut |
| ที่เก็บข้อมูล |
|
freeglutเป็นไลบรารีโอเพนซอร์สทางเลือกแทน ไลบรารี OpenGL Utility Toolkit (GLUT) GLUT (และ freeglut) ช่วยให้ผู้ใช้สามารถสร้างและจัดการหน้าต่างที่มีบริบท OpenGL บนแพลตฟอร์มต่างๆ ได้หลากหลาย รวมถึงอ่านค่าการทำงานของเมาส์ คีย์บอร์ด และจอยสติ๊ก freeglut มีจุดประสงค์เพื่อใช้ทดแทน GLUT อย่างสมบูรณ์ และมีความแตกต่างเพียงเล็กน้อยเท่านั้น
เนื่องจาก GLUT หยุดการพัฒนาไปแล้ว freeglut จึงอยู่ระหว่างการพัฒนาเพื่อปรับปรุงชุดเครื่องมือให้ดียิ่งขึ้น โดยเผยแพร่ภายใต้ใบอนุญาต MIT
ประวัติศาสตร์
โปรแกรม freeglut เดิมทีเขียนโดย Paweł W. Olszta โดยได้รับการสนับสนุนจาก Andreas Umbach และ Steve Baker เนื่องจาก Paweł เลิกทำงานด้านกราฟิก 3 มิติแล้ว เขาจึงส่งต่อหน้าที่นี้ให้กับ Steve Baker ผู้ดูแลโปรแกรม freeglut ในปัจจุบันคือ John F. Fay, John Tsiombikas และ Diederick C. Niehorster
Paweł เริ่มพัฒนา freeglut เมื่อวันที่ 1 ธันวาคม 1999 ปัจจุบันโครงการนี้ สามารถทดแทน GLUT เดิมได้เกือบ 100 เปอร์เซ็นต์ โดยมีเพียงไม่กี่ส่วนที่แตกต่างออกไป (เช่น การยกเลิกคุณสมบัติเฉพาะของ SGI เช่น กล่อง Dials&Buttons และ Dynamic Video Resolution) และจำนวนบั๊กที่ลดลงเรื่อยๆ
freeglut มีการปรับปรุงเล็กน้อยจาก GLUT เวอร์ชันดั้งเดิม แต่ตามนโยบายแล้ว จะไม่มีการเพิ่มคุณสมบัติสำคัญใดๆ เพิ่มเติมอีก
ในเดือนเมษายน พ.ศ. 2558 freeglut ได้รับการสนับสนุนเบื้องต้นสำหรับโปรโตคอลเซิร์ฟเวอร์แสดงผลWayland ใหม่ [ 1 ] [ 2 ]
ในช่วงหลายปีต่อมา freeglut ได้รับการปรับปรุงเล็กน้อยหลายอย่าง รวมถึงการรองรับ Cocoa ที่ดีขึ้นบน macOS การปรับปรุงแบ็กเอนด์ X11 และ Windows การจัดการหลายจอภาพและ Unicode ที่ดีขึ้น และการอัปเดตความสามารถในการพกพาสำหรับแพลตฟอร์มต่างๆ เช่น Wii/GameCube ข้อบกพร่องของ GLUT ที่มีมานานหลายอย่างได้รับการแก้ไขในขณะที่ยังคงรักษานโยบายของโครงการในการหลีกเลี่ยงคุณสมบัติใหม่ที่สำคัญ[ 3 ]
โอเพ่นกลูท
สมาชิกบางส่วนของทีม freeglut ที่ต้องการเพิ่มฟีเจอร์ต่างๆ ได้แยกโค้ดออกมาเพื่อสร้างOpenGLUT ขึ้น มา
การพัฒนา OpenGLUT ยุติลงในเดือนพฤษภาคม 2548 โดยเวอร์ชันสุดท้ายคือ OpenGLUT-0.6.3 ซึ่งเผยแพร่ในเดือนมีนาคม 2548
สถานะ
ปัจจุบัน freeglut มีความเสถียรมากและมีบั๊กน้อยกว่าGLUT เวอร์ชัน ดั้งเดิม อย่างไรก็ตาม ยังมีบางจุดที่ข้อกำหนดของ GLUT เวอร์ชันดั้งเดิมไม่ได้ระบุลำดับการทำงานของสิ่งต่างๆ เช่น ฟังก์ชันเรียกกลับ (callback) อย่างชัดเจน และเป็นไปได้ที่โปรแกรมแอปพลิเคชันที่ทำงานได้ภายใต้ GLUT จะล้มเหลวภายใต้ freeglut เนื่องจากโปรแกรมเหล่านั้นตั้งสมมติฐานบางอย่างที่ GLUT ไม่เคยรับประกันว่าจะเป็นจริง
มีการปรับปรุงแก้ไขใหม่ๆ ออกมาเป็นระยะ แต่เนื่องจากตอนนี้โปรแกรมมีความเสถียรมากแล้วและไม่มีแผนที่จะเพิ่มฟีเจอร์ใหม่ๆ การอัปเดตจึงมีความจำเป็นน้อยลงเรื่อยๆ อย่างไรก็ตาม สถานการณ์อาจเปลี่ยนแปลงไปหากมีการออกเวอร์ชันใหม่ของ GLUT
freeglut ถูกแจกจ่ายแทน GLUT ในระบบปฏิบัติการ Linux บางรุ่น เนื่องจากมันสามารถใช้งานร่วมกับเวอร์ชันเก่าได้ในระดับไบนารี โปรแกรมที่คอมไพล์สำหรับ GLUT จึงสามารถเชื่อมโยงกับ freeglut ได้โดยไม่มีปัญหา
ดูเพิ่มเติม
- EGL – อินเทอร์เฟซระหว่างOpenGL ESหรือOpenVGกับระบบจัดการหน้าต่าง
- ไลบรารีส่วนติดต่อผู้ใช้ OpenGL (GLUI)
- ไลบรารียูทิลิตี้ OpenGL (GLU)
- ชุดเครื่องมือยูทิลิตี้ OpenGL (GLUT)
ลิงก์ภายนอก
- เว็บไซต์อย่างเป็นทางการ
- ที่เก็บซอร์สโค้ด