Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 58 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
58
Dung lượng
2,34 MB
Nội dung
K H TN TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ TRI THỨC DIỆP CHÍ CƯỜNG – 0012523 H NGHIÊN CỨU CÁC KỸ THUẬT Đ HIỂN THỊ MƠ HÌNH ĐỊA HÌNH C N TT – BA CHIỀU K H O A LUẬN VĂN CỬ NHÂN TIN HỌC GIÁO VIÊN HƯỚNG DẪN Th.s ĐINH NGUYỄN ANH DŨNG NIÊN KHÓA 2000 – 2004 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Lời cảm ơn Lời cảm ơn đầu tiên em xin được gởi đến giáo viên hướng dẫn thầy Đinh Nguyễn Anh Dũng, là người đã tận tình hướng dẫn và chỉ bảo em trong suốt thời K H TN gian thực hiện đề tài tốt nghiệp này. Kế đến em xin chân thành cảm ơn các thầy cô trong Khoa Cơng Nghệ Thơng Tin, trường Đại học Khoa học Tự nhiên đã tạo điều kiện thuận lợi cho chúng em trong suốt bốn năm học Đại học, tạo cho chúng em có nền tảng kiến thức vững chắc. H Và cũng khơng qn gởi lời cảm ơn sâu sắc đến gia đình, các anh chị và bạn bè đã ủng hộ, giúp đỡ và động viên trong những lúc khó khăn trong suốt thời gian học Đ tập cũng như nghiên cứu. – Mặc dù đã cố gắng hết hoàn thành luận văn trong phạm vi và khả năng cho C N TT phép, nhưng chắc chắn sẽ khơng tránh khỏi những thiếu sót, kính mong sự thơng cảm và tận tình chỉ bảo của q Thầy Cơ và các bạn. Sinh viên thực K H O A Diệp Chí Cường -1- LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Bố cục Luận văn gồm chương: • Chương 1: Tổng quan chương mở đầu, giới thiệu nhu cầu thực tế K H TN lý thực đề tài Chương nêu hướng giải thực • Chương 2: Các khái niệm nêu lên số khái niệm liên quan đến vấn đề nêu • Chương 3: Thuật tốn Rưttger, Chương 4: Thuật tốn ROAM Chương 5: Thuật tốn Diamond mơ tả chi tiết vài thuật tốn thơng H dụng Các chương trình bày cấu trúc liệu, hoạt động Đ chi tiết thuật toán Cuối nêu ưu khuyết điểm thuật tốn – • Chương 6: Tổng kết chương cuối đề tài Chương nêu K H O A C N TT kết đạt thực cài đặt chương trình -2- LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Mục lục K H O A C N TT – Đ H K H TN Chương Tổng quan 1.1 Giới thiệu vấn đề .6 1.2 Các hướng giải vấn đề .7 Chương Các khái niệm 10 2.1 Đường ống đồ họa (graphics pipeline) 10 2.2 Cấu trúc biểu diễn đỉnh 11 2.3 Thu nhỏ khung cảnh (scene reduction) 11 2.4 Các mô hình hiển thị đồ họa 12 Chương Thuật toán Röttger 13 3.1 Cấu trúc liệu .13 3.2 Hiển thị đồ địa hình 15 3.3 Phát sinh lưới tam giác 16 3.4 Geomorphing 22 3.5 Clipping 23 3.6 Ưu khuyết điểm 23 Chương Thuật toán ROAM .25 4.1 Biểu diễn 25 4.1.1 Cây nhị phân tam giác 25 4.1.2 Lưới tam giác động liên tục 26 4.2 Tối ưu với hàng đợi kép 29 4.2.1 Hàng đợi phân chia (split queue) .29 4.2.2 Hàng đợi kết hợp (merge queue) .30 4.3 Các khái niệm lỗi (error metrics) 32 4.3.1 Các biên xếp chồng không gian giới 33 4.3.2 Sự méo mó hình học 33 4.3.3 Hiệu chỉnh Line-of-site (LOS) .36 4.3.4 Các khái niệm khác 36 4.4 Cải tiến trình hiển thị 37 4.4.1 View-frustum culling .37 4.4.2 T-stripping 38 4.4.3 Trì hỗn việc tính tốn lại độ ưu tiên .38 4.4.4 Tối ưu lũy tiến (progressive optimazation) 39 4.5 Ưu điểm khuyết điểm 40 4.5.1 Ưu điểm 40 4.5.2 Khuyết điểm 40 Chương Thuật toán Diamond 42 5.1 Biểu diễn 42 5.1.1 Cây tứ phân tam giác (triangle quadtree) .42 -3- LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com K H O A C N TT – Đ H K H TN 5.1.2 Các đặc tính 45 5.1.3 Tính liên tục (continuity) lưới tam giác 45 5.2 Thuật toán Diamond 46 5.2.1 Các hàng đợi tam giác 47 5.2.2 Thuật toán 48 5.3 Ưu khuyết điểm 51 Chương Tổng kết .52 -4- LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Danh sách hình K H O A C N TT – Đ H K H TN Hình 3-1: Lưới tam giác đồ địa hình × Các mũi tên thể mối quan hệ cha – tứ phân .14 Hình 3-2: Các quạt tam giác phát sinh đệ qui cho lưới tam giác hình 3.1 Dấu gạch chéo đỉnh bỏ qua 16 Hình 3-3: Tiêu chuẩn độ phân giải tồn cục: khoảng cách với kích thước tứ phân 17 Hình 3-4: Lưới tam giác hình phẳng vào tiêu chuẩn độ phân giải toàn cục Các tâm quạt tam giác có màu trắng cạnh màu đen 17 Hình 3-5: Tính tốn độ gồ ghề bề mặt 19 Hình 3-6: Hạn chế giá trị d2 khối kề nhằm thỏa mãn điều kiện (4) .20 Hình 3-7: Các giá trị d2 lan truyền từ lên (theo chiều mũi tên) 21 Hình 3-8: Lan truyền giá trị d2 làm cho lưới tam giác tốt gần cực trị địa phương bề mặt phẳng .22 Hình 4-1: Mức → nhị phân tam giác .26 Hình 4-2: Phép phân chia kết hợp lưới tam giác nhị phân Quan hệ láng giềng thể tam giác T bên trái .28 Hình 4-3: Phép phân chia ép buộc cho tam giác T .28 Hình 4-4: Các nêm xếp chồng cho miền 1-D phụ thuộc vào v 33 Hình 4-5: Biên chênh lệch việc chiếu nêm lên hình 35 Hình 4-6: Bên trái trước hiệu chỉnh LOS, bên phải sau thực 36 Hình 5-1: Vài mức ban đầu tứ phân tam giác 43 Hình 5-2: Định nghĩa tam giác mối quan hệ 44 Hình 5-3: Phép phân chia kết hợp 44 Hình 5-4: Tính khơng liên tục lưới tam giác 46 Hình 5-5: Hiệu chỉnh lại tính khơng liên tục cho lưới tam giác .46 Hình 6-1: Địa hình hiển thị thuật tốn Rưttger 52 Hình 6-2 : Địa hình hiển thị thuật tốn ROAM 53 Hình 6-3 : Địa hình hiển thị thuật tốn Diamond .54 Hình 6-4 : Địa hình phủ texture 55 -5- LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Chương 1.1 Giới thiệu vấn đề K H TN Tổng quan Hiện nay, công nghệ thông tin xâm nhập vào lĩnh vực đời sống xã hội Tin học hỗ trợ cho người nhiều Có thể nói Tin học góp phần làm cho H sống ngày tươi đẹp có ý nghĩa Đ Giờ đây, Tin học tiến ngày làm cho thứ trở nên đại dễ sử dụng Cùng với đà phát triển đó, phải kể đến – phát triển công nghệ ba chiều Trên giới, hãng sản xuất phần cứng đồ họa C N TT hàng loạt tung sản phẩm có tính mạnh mẽ tốc độ xử lý vơ nhanh chóng Bên cạnh đó, cơng nghệ ba chiều ngày ứng dụng rộng rãi từ lĩnh vục thương mại, công nghiệp, giải trí, … đến qn sự, khơng gian, … Do nhu cầu người ngày tăng, việc mô giới thực điều phải thực Từ ứng dụng thiết kế ba chiều phục vụ cho việc chế tạo máy móc thiết bị, xây dựng nhà cơng trình kiến trúc, đến ứng dụng mơ thử K H O A nghiệm tính công nghiệp chế tạo xe hơi, máy bay, … Điều cho thấy công nghệ ba chiều thiếu sống Trong không kể đến việc mô liệu địa hình giới thực vào máy tính Đây vấn đề ứng dụng rộng rãi chẳng hạn lĩnh vực không gian, máy tính mơ địa hình bề mặt hành tinh giúp cho công việc nghiên cứu thử nghiệm; lĩnh vực giải trí, trị chơi máy tính địi hỏi liệu địa hình giúp trị chơi mang tính thực hơn; hệ thống -6- LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com thông tin địa lý (Geographic Information System – GIS) vấn đề thiếu được; … 1.2 Các hướng giải vấn đề K H TN Trên thực tế, liệu địa hình vơ phức tạp to lớn, có nhiều ứng dụng địi hỏi tương tác động thời gian thực từ phía người sử dụng địi hỏi phải xử lý nhanh liệu địa hình để thích nghi với liệu đầu vào từ người dùng Nhiều hệ thống máy tính xử lý đồ họa đại cho phép hiển thị hàng ngàn đa giác tơ bóng hay phủ hình ảnh (texture) tốc độ tương tác Tuy nhiên, nhiều ứng dụng chứa đựng mơ hình đồ họa với phức tạp mặt hình học vượt H khả phần cứng đồ họa Vấn đề phổ biến ứng dụng xử lý Đ mơ hình bề mặt đa giác rộng lớn, chương trình mơ mơ hình hóa địa hình số – Để phục vụ cho mơ hình bề mặt phức tạp mà quản lý tốc độ hiển C N TT thị thời gian thực, vấn đề có hai hướng giải quyết, hai hướng đến việc xấp xỉ bề mặt đa giác hay đơn giản hóa liệu ban đầu Thứ nhất, phương pháp sử dụng mơ hình với đa độ phân giải Mơ hình phức tạp ban đầu tổ chức cấu trúc liệu đơn giản (các mơ hình nhiều độ phân giải khác nhau), sau đó, q trình hiển thị, tùy thuộc vào khoảng cách đến điểm nhìn mà K H O A định mơ hình hiển thị độ phân giải (thường gần điểm nhìn hiển thị chi tiết hơn, xa điểm nhìn hiển thị chi tiết hơn) Hướng thứ hai sử dụng cấu trúc liệu để đơn giản hóa địa hình ban đầu thường cấu trúc dạng điều khác biệt so với hướng cấu trúc xây dựng bước tiền xử lý mà lúc hiển thị địa hình Một vài phương pháp xử lý địa hình hiệu đưa Cây tứ phân có lẽ cấu trúc có ưu thuật tốn địa hình; phương pháp sử dụng việc thiết lập tính trông thấy (visibility) hay mức độ chi tiết dựa khối -7- LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com đưa ra; mạng tam giác bất qui tắc (trianglar irregular networks – TINs) phổ biến thuật tốn có mức độ chi tiết liên tục Các tứ phân thích hợp tốt với việc tổ chức cấu trúc liệu theo đồ chiều cao hai chiều bật thuật tốn khảm địa hình (terrain tessellation K H TN algorithm) Cấu trúc phân cấp tự cung cấp tốt cho view frustum culling tứ phân thường sử dụng trước thuật tốn địa hình để phục vụ chế lọc (view culling) A James Stewart mơ tả tập hợp tính nhìn thấy phân cấp (hierarchical visibility) cho địa hình, lưu trữ tứ phân hồn chỉnh H sử dụng để lọc (cull) vùng rộng lớn cách hiệu Phương pháp hoạt động tốt kết hợp với thuật tốn khác có dựa vào việc tính tốn LOD Đ Willem H de Boer lại mơ tả thuật tốn gần gũi với phần cứng mà sử – dụng tập hợp mức độ chi tiết theo khối (block-based level-of-detail) gọi GeoMipMaps Ông ta đề nghị cải tiến cho thuật toán để hạn chế C N TT tượng vertex poping (các đỉnh xuất đột ngột) có dạng GeoMipMap tam tuyến (trilinear GeoMipMap), xác định LOD khối với khối khác; điều biến đổi từ thuật toán mức độ ưu tiên theo khối sang thuật toán mức độ ưu tiên liên tục Một số phương pháp theo hướng cổ điển, thuật toán Diamond, tận dụng mạng TINs để thực trình hiển thị địa hình TINs mạng tam giác K H O A tất tam giác có hình dạng giống lại thay đổi kích thước liên quan đến tam giác khác Mạng Lindstrom, Röttger Duchaineau tận dụng với dạng khác Lindstrom đưa thuật tốn để có mức độ chi tiết liên tục lưới chữ nhật sử dụng tứ phân thay đổi động chiến thuật từ lên (bottom-up) Röttger thực ngược lại với Lindstrom, đưa thuật tốn để có kết tương tự cách sử dụng tứ phân hoàn chỉnh duyệt theo thứ từ từ xuống (top-down) -8- LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Duchaineau đưa thuật toán ROAM nhằm quản lý việc lập lưới tam giác có mức độ chi tiết liên tục cách sử dụng phép toán phân chia kết hợp dựa đỉnh Henri Hakl đưa thuật toán Diamond tương tự thuật toán ROAM K H O A C N TT – Đ H K H TN có số cải tiến nhằm tăng tốc độ hiển thị -9- LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com K H TN H Đ – Hình 5-1: Vài mức ban đầu tứ phân tam giác C N TT Từ biểu diễn tứ phân tam giác này, ta có hai kiểu tam giác, tam giác hướng lên tam giác hướng xuống Thuật toán CLOD mà thực hàm không phụ thuộc vào hướng tam giác, nhiên trình hiển thị việc phân biệt tam giác quan trọng hổ trợ cho việc khử mặt khuất Để giúp đỡ cho việc thực thuật toán, trước tiên định nghĩa K H O A tam giác mối quan hệ sau (Hình 5.2): • đỉnh v1, v2, v3 định nghĩa từ trái sang phải • láng giềng n1, n2, n3 định nghĩa từ trái sang phải • tam giác a, b, c, d – a tam giác giữa, tam giác lại định nghĩa từ trái sang phải - 43 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com K H TN Đ H Hình 5-2: Định nghĩa tam giác mối quan hệ Chúng ta định nghĩa phép phân chia kết hợp thông qua biểu diễn lưới điểm – sau: phép phân chia thay tam giác tam giác con, phép kết hợp K H O A C N TT phép đảo phép phân chia Hình mơ tả phép tốn Hình 5-3: Phép phân chia kết hợp - 44 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 5.1.2 Các đặc tính Như đề cập trên, tứ phân tam giác cung cấp tính giống nhị phân tam giác Tuy nhiên, tứ phân tam giác có số đặc tính khác với nhị phân tam giác làm tăng tính thực khả hiển thị tốt K H TN Trong cách biểu diễn nhị phân tam giác, đỉnh cho chia từ đến tam giác, với cách biểu diễn tứ phân tam giác, đỉnh ln chia tam giác Do biểu diễn tứ phân tam giác, phần tử hiển thị luôn gồm tam giác cho đỉnh Tính cố định làm cho việc hiển thị xác Thêm vào tượng vertex-popping H giảm bớt, chẳng hạn loại bỏ trường hợp đỉnh chia tam giác khung hình tam giác khung hình Đ Có lẽ quan trọng lưới tam giác có từ tứ phân tam giác có – phù với việc tối ưu hiển thị việc sử dụng dãy tam giác (triangle-strips) chẳng hạn Các dãy tam giác tổ chức nhị phân tam giác có cách C N TT lưu số thường ngắn khoảng trung bình từ – tam giác dãy (phụ thuộc vào kích thước địa hình mức độ chi tiết hiển thị), cấu trúc hình học phụ khơng phù hợp với dãy tam giác dài Ngược lại, tứ phân tam giác vốn phân tích thành dãy tam giác dài thuận tiện cho phần cứng trình tạo lưới tam giác Chiều dài trung bình dãy tam giác phụ thuộc vào mức độ K H O A chi tiết hiển thị (rendering detail), kích thước địa hình, sai số địa hình (terrain variance) 5.1.3 Tính liên tục (continuity) lưới tam giác Với biểu diễn lưới tam giác không hồn chỉnh, thất bại tính liên tục lưới tam giác: lưới tam giác có đỉnh dạng T (T-vertices) tam giác láng giềng mức khác Hình 5.4 bên ví dụ tính khơng liên tục lưới tam giác - 45 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com K H TN Hình 5-4: Tính khơng liên tục lưới tam giác Vấn đề dễ dàng khắc phục: thực lập lưới tam giác phép phân chia kết hợp không tạo tính khơng liên tục lưới tam giác; cần xem H xét đến mức độ chi tiết (level) tam giác bước Trong suốt trình Đ phát sinh lưới tam giác, tượng T-vertices loại bỏ cách xem xét đến C N TT – láng giềng có thao tác đặc biệt tương ứng, mơ tả hình 5.5 bên Hình 5-5: Hiệu chỉnh lại tính khơng liên tục cho lưới tam giác K H O A 5.2 Thuật tốn Diamond Trong phần này, mơ tả thuật tốn hiển thị địa đề cập Trước tiên, mô tả hàng đợi LIFO vận hành trình lập lưới tam giác cho địa hình; sau đưa mô tả đến phép phân chia kết hợp với vịng lặp hiển thị thuật toán Cuối điểm mạnh yếu thuật toán - 46 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 5.2.1 Các hàng đợi tam giác Thuật toán ROAM sử dụng hai hàng đợi: hàng đợi ưu tiên chứa đựng tất tam giác khả phân khả hợp, xếp theo thứ tự giá trị ưu tiên Các hàng đợi ưu tiên quản lý với thao tác mà thuật toán ROAM thực hiện, K H TN điều cho phép thuật tốn trực tiếp đạt số lượng tam giác cho trước: khung hình nên gồm có, ví dụ, 3000 tam giác Sau thuật toán thực phép phân chia kết hợp tam giác lưới tam giác đạt đến số tam giác 3000 tam giác Phụ thuộc vào hàng đợi ưu tiên, thao tác phân chia hay kết hợp tối ưu mang tính cục bộ, cho kết lưới tam H giác tối ưu với số lượng tam giác Một vài năm trở lại đây, mục đích quản lý số lượng tam giác cố định để bảo Đ đảm ứng dụng chạy tốc độ hiển thị cố định, từ nhu cầu xử lý từ – khung hình đến khung hình khác gần như số tam giác không đổi Tuy nhiên phần cứng đồ họa ngày mạnh đặc biệt khả phần cứng C N TT hổ trợ xử lý phép biến đổi chiếu sáng, nên loại bỏ nhu cầu quản lý số lượng tam giác cố định để có tốc độ hiển thị khơng đổi Các phần cứng đồ họa đại dễ dàng đương đầu với ngàn tam giác mà tốc độ hiển thị không bị ảnh hưởng Từ tốc độ hiển thị ngày không phụ thuộc vào số lượng tam giác K H O A hàng đợi ưu tiên xếp khơng cịn điều kiện tiên cho trình lập lưới tam giác cho địa hình Thay vào thuật tốn sử dụng hàng đợi LIFO có thời gian thêm vào xóa khơng thay đổi • SplitBelow – chứa tất tam giác khả phân có giá trị ưu tiên bé giá trị ưu tiên đích • SplitAbove – chứa tất tam giác khả phân có giá trị ưu tiên lớn giá trị ưu tiên đích - 47 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com • MergeBelow – chứa tất tam giác khả hợp có giá trị ưu tiên bé giá trị ưu tiên đích • MergeAbove – chứa tất tam giác khả hợp có giá trị ưu tiên lớn giá K H TN trị ưu tiên đích 5.2.2 Thuật toán Trong phần vào mơ tả chi tiết thuật tốn địa hình Diamond (Diamond terrain algorithm) Trước tiên xem xét vòng lặp thuật tốn, sau mơ tả chi tiết phép phân chia (và qui trình phát sinh tam giác con) phép kết hợp H A Vịng lặp chính: Đ Vịng lặp hiển thị thuật tốn bao gồm q trình phân biệt: q trình đánh giá độ ưu tiên trình lặp lưới tam giác Trong trình đánh giá độ ưu tiên, – giá trị ưu tiên tất tam giác hàng đợi đánh tính tốn lại C N TT tam giác đưa vào hàng đợi cần thiết Trong trình lặp lưới tam giác, tất tam giác khả hợp có độ ưu tiên nhỏ độ ưu tiên đích kết hợp lại tất tam giác khả phân lớn độ ưu tiên đích phân chia Nếu ResetDiamond K H O A Thiết lặp lại lưới tam giác hàng đợi Lọc (cull) dành ưu tiên cho tam giác láng giềng đáy xếp tam giác vào hàng đợi thích hợp SplitAbove hay SplitBelow Ngược lại Duyệt qua hàng đợi SplitBelow, đánh giá lại độ ưu tiên xếp lại phần tử vào hàng đợi SplitAbove cần thiết - 48 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Duyệt qua hàng đợi MergeAbove, đánh giá lại độ ưu tiên xếp lại phần tử vào hàng đợi MergeBelow cần thiết Kết hợp phần tử MergeBelow Trong SplitAbove chưa rỗng, Phân chia phần tử SplitAbove K H TN Trong MergeBelow chưa rỗng, ResetDiamond giá trị nhị phân, (true) vòng lặp chạy lần đầu H tiên Nếu ResetDiamond = true với khung hình phía sau, thuật tốn thực phép phân chia lưới tam giác; cịn false thuật tốn động Đ (phụ thuộc vào khung hình) thực hai phép phân chia kết hợp – Chú ý sau lần thực xong vòng lặp này, hàng đợi MergeBelow SplitAbove trở nên rỗng – tất tam giác khả hợp khả phân nằm C N TT hàng đợi SplitBelow MergeAbove sau lần lặp B Phép phân chia: Về mặt hình học, phép phân chia đơn giản thực dễ dàng, nhiên, vơ quan trọng q trình thực thuật tốn mà bốn hàng đợi LIFO quản lý cách xác K H O A Phép phân chia đảm bảo tam giác láng giềng chênh lệch mức (level) Điều thực cách ép buộc tam giác láng giềng phân chia q thơ, để tam giác xét phân chia Nếu tam giác xét đưa vào hàng đợi Lấy tam giác khỏi hàng đợi SplitAbove Nếu tam giác cha đưa vào hàng đợi Lấy tam giác khỏi hàng đợi kết hợp - 49 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Nếu tam giác láng giềng thô tam giác xét Phân chia tam giác láng giềng Nếu tam giác cha tam giác láng giềng đưa vào hàng đợi Tạo tam giác từ tam giác xét K H TN Lấy tam giác khỏi hàng đợi kết hợp Lọc (cull) dành ưu tiên cho tam giác đưa vào hàng đợi SplitAbove hay SplitBelow cho phù hợp H Nếu tam giác xét khả hợp Đ Đưa vào hàng đợi MergeAbove – Chú ý tam giác khả hợp có tam giác khơng có tam giác cháu C N TT C Quá trình phát sinh tam giác con: Quá trình phát sinh tam giác phần phép phân chia tam giác Khi thực trình phát sinh tam giác, điều quan trọng phải chắn tam giác láng giềng phải liên kết xác với K H O A Tạo tam giác liên kết chúng với tam giác xét Gán tọa độ cho tam giác Nếu khơng có tam giác láng giềng Thiết lặp láng giềng rỗng (NULL) Ngược lại Nếu tam giác láng giềng có Liên kết tam giác tam giác xét tam giác láng giềng với - 50 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Ngược lại Liên kết tam giác tam giác xét với tam giác láng D Phép kết hợp: K H TN giềng Tương tự phép phân chia, phép kết hợp đơn giản mặt hình học, nhiên, việc quản lý hàng đợi cho xác địi hỏi cần phải ý đặc biệt Nếu tam giác đưa vào hàng đợi H Lấy chúng khỏi hàng đợi phân chia Lấy tam giác xét khỏi hàng đợi MergeBelow Đ Chỉnh lại liên kết cho tam giác láng giềng cần thiết – Xóa tam giác tam giác xét C N TT Nếu tam giác cha láng giềng kết hợp Đưa tam giác cha vào hàng đợi kết hợp phù hợp Nếu tam giác cha tam giác đang xét kết hợp Đưa tam giác cha vào hàng đợi kết hợp phù hợp K H O A Đưa tam giác xét vào hàng đợi SplitBelow 5.3 Ưu khuyết điểm Thuật toán dựa theo ý tưởng ROAM nên kế thừa ưu điểm ROAM Trong với cấu trúc biểu diễn lưới tam giác, không cần thực phương pháp phức tạp để lấy strip tam giác từ lưới tam giác, mà cấu trúc tự có strip tam giác dài nên giảm thời gian hiển thị Thuật toán sử dụng hàng đợi LIFO cho phép sử dụng hiệu tài nguyên trình xử lý - 51 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Chương K H TN Tổng kết Chúng em thực cài đặt thử nghiệm thuật tốn nêu Chương trình cài đặt ngơn ngữ Visual C++® 6.0 thư viện đồ họa OpenGL chạy K H O A C N TT – Đ H Windows® XP hệ thống Pentum®IV 256M RAM VGA 64M Hình 6-1: Địa hình hiển thị thuật tốn Rưttger - 52 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com K H TN H Đ – C N TT K H O A Hình 6-2 : Địa hình hiển thị thuật toán ROAM - 53 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com K H TN H Đ – C N TT K H O A Hình 6-3 : Địa hình hiển thị thuật tốn Diamond - 54 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com K H TN H Đ – C N TT Hình 6-4 : Địa hình phủ texture K H O A Tốc độ trung bình thuật tốn hiển thị 5000 tam giác Thuật tốn Rưttger ROAM Diamond Tốc độ (frame/s) 84.3 63.7 75.8 - 55 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Tài liệu tham khảo [1] Stefan Röttger, Wolfgang Heidrich, Philipp Slusalleck, and Hans-Peter Seidel Real-time Generation of Continuous Levels of Detail for [2] K H TN Height Fields Proceedings of WSCG ’98, pages 315-322, 1998 Peter Lindstrom, David Koller, William Ribarsky, Larry F Hodges, Nick Faust Real-time, Continuous Level of Detail Rendering of Height Fields Proceeding of ACM SIGGRAPH ‘96, pages 109–118, August 1996 [3] Mark Duchaineau, LLNL, Murray Wolinsky, LANL, David E Sigeti, H LANL, Mark C Miller, LLNL, Charles Aldrich, LANL, Mark B Đ Mineev-Weinstein, LANL ROAMing Terrain: Real-time Optimally Adapting Meshes IEEE Visualization ’97, pages 81–88, 1997 Ulrich Thatcher Continuous LOD Terrian Meshing Using Adaptive – [4] [5] C N TT Quadtrees Gamasutra 2000 Willem H de Boer Fast Terrain Rendering Using Geometrical MipMapping 2000 [6] A James Stewart Hierarchical Visibility in Terrains Eurographics Rendering Workshop 1997 P Lindstrom, V Pascucci Visualization of Large Terrains Made Easy K H O A [7] Proceedings of IEEE Visualization 2001 2001 [8] Henri Hakl Diamond Terrain Algorithm – Continuous Levels of Detail for Height Fields 2001 [9] Hugues Hoppe Smooth View-Dependent Level-of-Detail Control and its Application to Terrain Rendering In IEEE Visualization ’98, pages 35-42 IEEE, October 1998 - 56 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com [10] Bent Dalgaard Larsen, Niel Jorgen Christensen Real-time Terrain Rendering using Smooth Hardware Optimized Level of Detail [11] Marc van Kreveld Algorithms for Triangulated Terrain [12] Alex A Pomeranz ROAM Using Surface Triangle Clusters K H O A C N TT – Đ H K H TN (RUSTiC) Thesis of Masters of Science in Computer Science 2000 - 57 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... 46 Hình 5-5: Hiệu chỉnh lại tính khơng liên tục cho lưới tam giác .46 Hình 6-1: Địa hình hiển thị thuật tốn Rưttger 52 Hình 6-2 : Địa hình hiển thị thuật toán ROAM 53 Hình 6-3 : Địa. .. này, mơ tả thuật tốn hiển thị địa đề cập Trước tiên, mô tả hàng đợi LIFO vận hành trình lập lưới tam giác cho địa hình; sau đưa mô tả đến phép phân chia kết hợp với vịng lặp hiển thị thuật tốn... trường ngồi trời bao gồm địa hình, núi, rừng biển, … Dữ liệu địa hình thường lưu trữ dạng đồ chiều cao (height field) Bản đồ chiều cao hình ảnh chiều giá trị điểm diễn giải thành chiều cao điểm