Sau khi đọc một cuộc thảo luận trên Diễn đàn Ubuntu liên quan đến GLUT vs. FreeGLUT.GLUT có chết không?
GLUT có bị chết vì lập trình đồ họa không? SDL có phải là cơn thịnh nộ ngay bây giờ cho lập trình OpenGL không?
Sau khi đọc một cuộc thảo luận trên Diễn đàn Ubuntu liên quan đến GLUT vs. FreeGLUT.GLUT có chết không?
GLUT có bị chết vì lập trình đồ họa không? SDL có phải là cơn thịnh nộ ngay bây giờ cho lập trình OpenGL không?
Theo tôi, GLUT vẫn tuyệt vời để học lập trình OpenGL. Nó không còn được duy trì, theo như tôi biết. Đỗ xem xét: http://www.opengl.org/resources/libraries/glut/ cho từ chính thức
Extract từ liên kết ở trên - "Thư viện GLUT đã cả C, C++ (giống như C), FORTRAN, và Ada bindings lập trình Sự phân bố mã nguồn GLUT là cầm tay. cho gần như tất cả các nền tảng và triển khai OpenGL. Phiên bản hiện tại là 3.7. Các bản phát hành bổ sung của thư viện không được dự đoán. GLUT không phải là nguồn mở. Mark Kilgard duy trì bản quyền. "
Ngoài ra, hãy xem: http://www.opengl.org/resources/libraries/windowtoolkits/ để biết các giải pháp thay thế.
Bạn cũng có thể muốn kiểm tra GLUX: http://code.google.com/p/glux/
Theo như SDL là cơn thịnh nộ, nó là rất tốt cho nền tảng công cụ và nhiều người đang sử dụng nó. Cá nhân tôi sử dụng Qt cho công việc OpenGL của tôi. Các lựa chọn thay thế hệ thống cửa sổ khác cũng tồn tại. Nó cũng có thể để chương trình tự nhiên cho các cửa sổ hoặc X.
Chỉnh sửa ngày 28 tháng 2 năm 2017:
tôi nên làm rõ rằng các sinh viên tìm cách để nhảy vào thực tiễn của việc OpenGL sẽ tốt hơn phục vụ bằng cách bắt đầu với SDL hoặc Qt. Như @TM ghi chú đúng trong nhận xét của mình, việc sử dụng GLUT bị loại bỏ khỏi thực tế của việc lập trình một ứng dụng dựng hình thực tế trong OpenGL. Ý kiến của tôi rằng GLUT là tốt cho việc học đến từ suy nghĩ rằng nó dễ dàng hơn để tìm hiểu khi một tách mối quan tâm của việc học một OpenGL từ mối quan tâm của việc học về các chi tiết cụ thể của một hệ thống Windowing. Đương nhiên, điều này có thể không phù hợp với nhu cầu của bạn.
GLUT khá đơn giản để phát triển trò chơi nghiêm túc. SDL được sử dụng bởi nhiều công ty chuyển đổi trò chơi thương mại. GLUT xảy ra tốt cho việc học OpenGL và cho các bản demo đơn giản. Một cái gì đó giống như SDL là khá tốt cho các trò chơi thực tế.
SDL với sự trừu tượng của nó cho những thứ khác, chẳng hạn như âm thanh và các thư viện bổ trợ khác nhau của SDL (SDL_image, SDL_mixer, ...) giúp ích rất nhiều khi viết một trò chơi đầy đủ. Kiểm soát vòng lặp chính cũng khá quan trọng.
Nếu bạn đang làm việc trên một ứng dụng OpenGL cần một số GUI gốc (ví dụ, một người lập mô hình 3D), bạn có thể quan tâm hơn đến việc sử dụng wxWidgets hoặc, như batbrat được đề xuất, Qt.
GLUT là một hướng dẫn học tập rất hữu ích, nhưng nó không đầy đủ tính năng hoặc đủ hữu ích cho hầu hết các ứng dụng trong thế giới thực. Tôi cũng gặp phải các vấn đề nhỏ với một vài triển khai và hỗ trợ GLUT khác nhau trong một số môi trường, vì vậy tôi đã học cách tránh xa nó vì bất kỳ điều gì nhưng trình diễn nhanh.
Trải nghiệm OpenGL của tôi thường nằm trên các hệ thống nhúng nơi tôi có toàn quyền kiểm soát kết quả đầu ra và ở đó tôi sử dụng X Instrinsics để mở Cửa sổ OpenGL cơ bản. Đó là một chút đau đớn, nhưng đó là một số lượng nhỏ của mã để có được OpenGL, nơi mà phần lớn các công việc được thực hiện.
GLUT * là * dễ dàng hơn để chọn, nhưng nó không thực sự chuẩn bị cho người học cho thực tế OpenGL rendering trong một ứng dụng thực tế. –
@TM, điều này rất đúng. Nhưng tôi vẫn duy trì rằng đó là một điểm khởi đầu tốt vì bạn có thể tách mối quan tâm của việc học OpenGL khỏi việc xử lý các chi tiết cụ thể của việc thiết lập cho một hệ thống cửa sổ này hay hệ thống cửa sổ khác. – batbrat
@batbrat Cũng giống như OpenGL 2 là OpenGL thân thiện với người mới bắt đầu hơn và hiện đại. – lisyarus