Đồ họa 3D - Các thuật toán khử mặt khuất
Một số phương pháp
-Thuật toán loại bỏ mặt sau
-Thuật toán depth sorting
-Thuật toán z-buffer
-Thuật toán Scanline
-Thuật toán Warnock
-Thuật toán BSP
Trang Trang 4 44 4
-Thuật toán BSP
-Thuật toán Ray casting
ĐỒ HỌA 3D CÁC THUẬT TOÁN KHỬ MẶT KHUẤT Giảng viên : Bùi Tiến Lên Bài toán Input : Danh sách các mặt đa giác {f0, f1, ... , fn-1} (trong hệ tọa độ quan sát) Trang 2 Bài toán Output : Trang 3 Một số phương pháp -Thuật toán loại bỏ mặt sau -Thuật toán depth sorting -Thuật toán z-buffer -Thuật toán Scanline -Thuật toán Warnock -Thuật toán BSP Trang 4 -Thuật toán Ray casting Thuật toán loại bỏ mặt sau Mặt trước Trang 6 Mặt sau Trang 7 Thuật toán Duyệt tuần tự các mặt đa giác trong danh sách. Xét đa giác f bước 1 Xác định v bước 2 Tính v.n bước 3 Xét giá trị v.n -≥0 loại bỏ mặt đa giác f Trang 8 -<0 giữ lại mặt đa giác f n v mặt đa giác Ví dụ Trang 9 Ví dụ Trang 10 Áp dụng Trang 11 Áp dụng Trang 12 Lưu ý Trang 13 Thuật toán depth sorting Độ sâu là gì ? Điểm : độ sâu p = -pz Đa giác : độ sâu f = min{độ sâu p0, ... , độ sâu pn-1} Trang 15 Thuật toán bước 1 Sắp xếp các mặt đa giác trong danh sách theo thứ tự độ sâu tăng dần. bước 2 Vẽ các mặt đa giác theo thứ tự đã sắp xếp. Trang 16 Ví dụ 1 3 Trang 17 2 Ví dụ Trang 18 Lưu ý Trang 19 Thuật toán z-buffer Thuật toán Khởi động z-buffer Duyệt tuần tự các mặt đa giác Nếu độ sâu trên mặt đa giác nhỏ hơn độ sâu tương ứng đang trong lưu trong buffer thì cập nhật lại z-buffer và color-buffer Trang 21 Ví dụ 1 2 Trang 22 3 Duyệt đa giác 1 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 ∞ 6 6 6 6 ∞ ∞ 6 6 6 6 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ 6 6 6 6 ∞ ∞ 6 6 6 6 ∞ Trang 23 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ Duyệt đa giác 2 4 4 4 4 4 4 ∞ 4 4 6 6 ∞ ∞ 4 6 6 6 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ 4 4 4 6 ∞ ∞ 6 6 6 6 ∞ ∞ 6 6 6 6 ∞ ∞ 6 6 6 6 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ 6 6 6 6 ∞ ∞ 6 6 6 6 ∞ Trang 24 ∞ ∞ ∞ ∞ ∞ ∞∞ ∞ ∞ ∞ ∞ ∞ Duyệt đa giác 3 5 5 5 ∞ 4 4 6 6 ∞ ∞ 4 6 6 6 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ 4 4 4 6 ∞ ∞ 5 5 6 6 ∞ ∞ 4 4 6 6 ∞ ∞ 4 6 6 6 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ 4 4 4 6 ∞ ∞ 6 6 6 6 ∞ Trang 25 ∞ ∞ ∞ ∞ ∞ ∞∞ ∞ ∞ ∞ ∞ ∞ Trang 26 Thuật toán Scanline Thuật toán Scanline Trang 28 Thuật toán Warnock Thuật toán Warnock Trang 30 Thuật toán BSP Thuật toán BSP Trang 32 Thuật toán Ray Casting
File đính kèm:
- Đồ họa 3D - Các thuật toán khử mặt khuất.pdf