2012-01-17 42 views
5

Tôi muốn nâng cấp ứng dụng 3D khoa học của mình từ Freeglut lên GLFW, nhưng tôi lo lắng về xung đột hoặc mất dữ liệu bị ẩn, Thực tế ứng dụng của tôi hoạt động như một nét duyên dáng với Freeglut và I don không có vấn đề gì, nhưng GLFW được đề nghị cho OpenGL hiện đại (3.0+) trong tất cả các sách và hướng dẫn hiện đại.Chuyển đổi dự án C++ openGL hiện có từ glut/freeglut sang glfw

Tôi nhìn vào GLFW API và có vẻ như Glut với tiền tố glfw*, nhưng tôi không chắc chắn chính xác. vì vậy tôi có ba câu hỏi trong tâm trí:

  1. Có đáng để phá vỡ dự án hiện tại của tôi cho GLFW sake, hoặc dính vào freeglut?
  2. Tôi có bị mất bất kỳ tính năng nào không?
  3. GLFW có tương thích với GTK + không? (Vì giao diện của tôi được dựa trên GTK)
+3

Tôi không thấy lý do tại sao bạn không thể sử dụng opengl 3.0+ với thẻ miễn phí, nếu thẻ của bạn hỗ trợ nó –

+1

Vâng, từ một cái nhìn vào GLFW, tôi thấy nhiều tùy chọn hơn trong freeglut. Tôi đoán đó là lý do. không chắc chắn tho –

+2

Freeglut hỗ trợ OpenGL3 tốt. Làm một cái gì đó như 'glutInitContextVersion (3, 2); glutInitContextFlags (GLUT_FORWARD_COMPATIBLE); 'và bạn đã sẵn sàng để cuộn. –

Trả lời

3

3- là GLFW tương thích với GTK +? (vì GUI của tôi dựa trên GTK)

Sử dụng GTK + bạn không nên sử dụng Free-/ GLUT cũng như GLFW. GTK + có tiện ích OpenGL và thực hiện tất cả quản lý sự kiện. Sử dụng điều đó.

+0

@Ndv Chỉ cần ghi nhớ rằng GLFW (như freeglut) chỉ là ** một thư viện GUI ** (như GTK +), ** không liên quan gì đến OpenGL **. –

+2

@Ndv Vì vậy, nếu bạn muốn tự mình xử lý, bạn sẽ không tự xoay xở quản lý ngữ cảnh OpenGL bằng cách sử dụng API riêng của nền tảng (wgl for win, glX for nix). Nếu không, không có đối số cho GLFW/GLUT nhưng đối với GTK +, vì cả hai đều chỉ đóng gói cho nền tảng OpenGL và GUI quản lý cụ thể, làm cho chúng không hơn ** thư viện GUI với hỗ trợ quản lý ngữ cảnh OpenGL **. Về vấn đề này GLFW/GLUT và GTK + là trên cùng một mức độ trừu tượng. Một lần nữa: ** GLFW/GLUT không thuộc về hoặc có liên quan gì đến OpenGL **, không nhiều hơn GTK +. –

+0

@Ndv: Tôi chỉ có thể đồng ý với Christian Rau; * GLUT và GLFW không ở mức thấp * Bạn muốn thấy mức thấp? Sau đó, hãy xem https://github.com/datenwolf/codesamples/tree/master/samples/OpenGL/x11argb_opengl – datenwolf

Các vấn đề liên quan