2012-01-25 32 views
15

tôi một chút nhầm lẫn về mối quan hệ của các thư viện liệt kê ở trên, sau đây là những gì tôi nghĩ:Mối quan hệ giữa các thư viện: Clutter, Cogl, Clutter, GTK +, vv

  1. Cario là một thư viện đồ họa 2D và GTK + sử dụng nó để hiển thị tiện ích con. Cario là cấp thấp.
  2. Cogl là thư viện đồ họa 3D dựa trên OpenGL (hoặc ngã ba? Tôi không biết) và Clutter là bộ công cụ GUI 3D dựa trên Cogl.

Nếu điều này đúng, liệu Clutter có thay thế GTK + một ngày nào đó không?

Và ...

Nếu bạn nghĩ rằng có một nơi tốt hơn để hỏi câu hỏi này hoặc một số cuốn sách tôi nên đọc đầu tiên, xin vui lòng cho tôi biết! Tôi là lập trình tự học cho sự quan tâm.

Trả lời

39

có, Cairo là API bản vẽ 2D chất lượng cao và GTK + sử dụng Cairo để vẽ chính nó.

Cogl là thư viện lập trình GPU mà nội bộ có thể sử dụng GL hoặc GLES để truy cập đường ống đồ họa (mặc dù trên lý thuyết nó có thể dễ dàng sử dụng DirectX trên nền tảng được hỗ trợ).

Làm xáo trộn sử dụng Cogl để hiển thị, nhưng cũng có thể sử dụng Cairo cho các phần tử 2D.

Sự lộn xộn sẽ không thay thế GTK +: GTK + là một thư viện rất phức tạp cung cấp tích hợp hệ thống, tiện ích phức tạp và API tiện ích khác mà Clutter không quan tâm.

tương lai sẽ xám hơn một chút so với thay thế đen trắng.

Cairo có thể sử dụng Cogl để vẽ; Cogl sẽ lập trình các đường ống GPU, nhưng Cairo sẽ tạo ra các hình học được gửi, vì vậy bạn có thể có kết quả 2D chất lượng cao. Cairo đã có thể sử dụng GL trực tiếp, nhưng Cogl đã theo dõi trạng thái tốt hơn rồi.

Sự lộn xộn có thể sử dụng GDK, API hệ thống cửa sổ GTK +, để nói chuyện với các bề mặt hệ thống cửa sổ và nhận các sự kiện đầu vào.

trong tương lai, hoàn toàn có thể là GTK + sẽ sử dụng Clutter nội bộ làm cơ sở cho các tiện ích con của nó - mặc dù đó vẫn là một công việc đang được tiến hành.

trong ngắn hạn, một sơ đồ có thể là:


    GPU <- [ [ Cogl + Cairo ] <- [ GDK + Clutter ] <- GTK+ ] <- application 
+4

Để mang về nhà một chút, nếu bạn là nhà phát triển ứng dụng, bạn có thể sử dụng gtk để tạo cửa sổ, menu, thanh công cụ, v.v. vào ẩn dụ ứng dụng dựa trên tiện ích. Trong sự lộn xộn, bạn có thể đào sâu xuống Cairo để thực hiện các nhiệm vụ vẽ cụ thể. –

-3

Tôi nghĩ rằng mối quan hệ giữa các thư viện phụ thuộc lẫn nhau; có nghĩa là, một thư viện không thể tự đứng vững được. Nó cần phải phụ thuộc vào người khác để chạy.

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