Giới thiệu Saga3D

  • Tổng số bài viết: 53
  • Số lần được cảm ơn: 17

Giới thiệu Saga3D Tác giả: manh

1. Mở đầu
Chào các bạn, để tiếp tục xây dựng chuỗi bài viết Hướng dẫn lập trình đồ họa , các bài về Saga3D sẽ được đăng tải.
Những bài viết liên quan tới Saga3D đòi hỏi kiến thức về lập trình trung bình khá trở lên. Nếu cảm thấy chưa tự tin để tìm hiểu, mình khuyên người đọc tập trung vào mục Irrlicht của diễn đàn.

2. Saga3D do ai tạo ra?
Bộ phận phát triển mã nguồn mở của InnerPiece (InnerPiece OSS) chịu trách nhiệm phát triển dự án Saga3D dưới dạng mã nguồn mở.
Nguyễn Tiến Mạnh (người viết bài này) là một trong các lập trình viên chính.

3. Giới thiệu về Saga3D



Saga3D là một thư viện lập trình đồ họa 2D/3D mã nguồn mở, ứng dụng các tiến bộ mới nhất của lập trình đồ họa trên thế giới tính đến thời điểm năm 2018 trở về sau. Với sức mạnh của Vulkan trong đa nền tảng và đồ họa hiệu năng cao, Saga3D có thể sử dụng để lập trình các kỹ thuật đồ họa cao cấp trong khi đó vẫn dễ dàng sử dụng hơn việc lập trình trực tiếp bằng Graphics API, thứ vốn thường được coi là phụ thuộc rất chặt chẽ vào nền tảng thực thi.
Chính OpenGL đã đưa ra ý tưởng về một API đa nền tảng, nhưng chưa làm tốt được việc đó. Trên các nền tảng khác nhau chúng ta cần các API OpenGL khác nhau (OpenGL, OpenGL ES, WebGL).

Vulkan được tổ chức phát triển OpenGL khởi đầu, và có được sự ủng hộ và tham gia bởi nhiều tập đoàn công nghệ hàng đầu thế giới.
Kết quả rằng hiện nay Vulkan chạy được trên hầu hết tất cả các nền tảng mà không cần phải viết lại code.
Bao gồm: Windows, Linux, Android, iOS và MacOS (sử dụng MoltenVK để tự động dịch Vulkan sang Metal API của Apple).

Dự án Saga3D được tạo ra để ứng dụng Vulkan làm kỹ thuật chủ yếu, không sử dụng các Graphics API khác nếu không bắt buộc.
Quá trình thiết kế Saga3D đã học hỏi nhiều ý tưởng của các thư viện lập trình tốt khác:
- Irrlicht: sử dụng đơn giản
- Sokol : linh hoạt, dễ hiểu, trừu tượng cao (dễ dàng thêm API khác)

Để hiểu thêm về khả năng của Saga3D, các bạn có thể tham khảo các ứng dụng mẫu , minh họa các kỹ thuật đồ họa khác nhau.
Tại thời điểm viết bài, các nền tảng được InnerPiece OSS ưu tiên phát triển bao gồm: Windows, Linux và Android.

4. Ứng dụng của Saga3D
Saga3D có thể sử dụng để lập trình mọi thứ trong đồ họa 2D/3D. Tuy nhiên không đi kèm theo một hướng dẫn cụ thể nào đó bởi thư viện mang tính linh hoạt cao.
Trong tương lai các bạn sẽ thấy những sản phẩm khác nhau (đặc biệt là từ InnerPiece) và những ứng dụng mẫu minh họa cho điều này.

Một số mục đích phù hợp cho việc sử dụng Saga3D:
- Lập trình game: thay vì dùng trực tiếp OpenGL/Vulkan API phức tạp, hãy sử dụng Saga3D
- Phát triển engine: các công ty công nghệ cần một giải pháp mạnh mẽ làm nền tảng có thể dùng Saga3D
- Dự án nghiên cứu về đồ họa máy tính hoặc sử dụng đồ họa máy tính
- Lập trình mô phỏng
- Lập trình thuật toán chạy trên GPU
- Lập trình các ứng dụng đồ họa khác

5. Kết
Trên đây là bài giới thiệu của mình về Saga3D, thời gian tới sẽ có thêm các bài hướng dẫn lập trình sử dụng thư viện đồ họa này.
Các thông tin khác về dự án mọi người xem thêm tại trang phát triển .
Sửa lần cuối: 5 năm 3 tuần trước bởi manh.
5 năm 3 tuần trước #1

Vui lòng Đăng nhập hoặc Tạo tài khoản để tham gia cuộc hội thoại.

Thời gian tải trang: 0.107 giây
©2024 GameDevSpot. All Rights Reserved.

Công cụ