- eBook miễn phí về lập trình đồ họa WebGPU bằng JavaScript
- Lý do viết cuốn sách
- Tác giả được hỏi rằng con của một người bạn nên học gì để bắt đầu với lập trình đồ họa
- Trước đây, OpenGL và DirectX thường được khuyến nghị cho người mới bắt đầu
- Gần đây đã xuất hiện các API mới như Vulkan, Metal và DirectX 12, nhưng chúng có mã phức tạp hơn và khác nhau tùy nền tảng
- WebGPU là một API đồ họa mới cung cấp khả năng đồ họa native trên web
- Khác với các API khác, WebGPU đóng vai trò như một lớp wrapper cho nhiều API
- Ưu điểm của WebGPU:
- Tương đối đơn giản vì là mẫu số chung của các API khác
- Có thể dùng trên mọi nền tảng như một tiêu chuẩn API đồ họa web
- Cũng có các triển khai bằng C++ và Rust cho những ai quan tâm đến phát triển native
- Bắt đầu từ phần tổng quan về driver GPU và pipeline GPU
- Nhiều sinh viên có thể tạo các ứng dụng đồ họa đơn giản, nhưng lại thiếu hiểu biết về cách driver GPU tương tác với phần cứng
- Sau đó học cách sử dụng WebGPU cơ bản
- Vẽ tam giác: thành phần cơ bản của đồ họa 3D
- Các kỹ thuật render 2D và điều khiển cảnh 3D
- Các chủ đề nâng cao
- Giải thích về tính toán GPU bằng WebGPU và các kỹ thuật render nâng cao
- Cho phép tính toán GPU trên web, điều mà WebGL không thể làm được
- Mở ra những khả năng thú vị như suy luận AI trên GPU
- Hướng dẫn cuối cùng: render Gaussian Splatting
- Ví dụ phức tạp kết hợp tính toán GPU và render
- Gaussian Splatting là công nghệ mới nhất cho phép render cảnh 3D chân thực theo thời gian thực
- Được cung cấp dưới định dạng web tương tác thay vì sách truyền thống
- Cung cấp giải thích khái niệm qua video, trích dẫn tham chiếu qua liên kết và sân chơi trực tuyến để chạy và chỉnh sửa mẫu mã
Tóm tắt của GN⁺
- "WebGPU Unleashed" là cuốn sách miễn phí giúp dễ dàng học lập trình đồ họa WebGPU bằng JavaScript
- WebGPU tương đối đơn giản vì là mẫu số chung của nhiều API đồ họa và có thể dùng trên mọi nền tảng
- Cuốn sách bắt đầu từ tổng quan về driver GPU và pipeline, rồi đi qua vẽ tam giác cơ bản, các kỹ thuật render 2D và 3D, cho đến tính toán GPU nâng cao
- Bạn có thể học cách render cảnh 3D chân thực theo thời gian thực thông qua các công nghệ mới nhất như Gaussian Splatting
- Được cung cấp dưới định dạng web tương tác, giúp nâng cao hiệu quả học tập qua video, liên kết và sân chơi trực tuyến
1 bình luận
Ý kiến trên Hacker News
Trong quá trình làm dự án WebGPU, rất khó tìm được nhiều thông tin
Rất ấn tượng và thú vị đối với những ai muốn đào sâu vào WebGPU
Đang định bắt đầu một bản mẫu game nhỏ để học WebGPU
Khái niệm code playground được gắn siêu liên kết thật tuyệt vời
Cảm ơn vì một cuốn sách tuyệt vời
Rất ngầu và có vẻ đã bỏ ra rất nhiều công sức
Lời khuyên là đừng quá tự trách bản thân dù dự án chưa hoàn toàn kết thúc
Câu hỏi về lý do WebGPU không được bật mặc định trên Firefox
Cảm ơn vì rất nhiều nội dung chất lượng được cung cấp miễn phí