Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 70 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
70
Dung lượng
1,89 MB
Nội dung
TRƯỜNG ĐH KHOA HỌC TỰ NHIÊN TP.HCM KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ TRI THỨC TP H C M oOo TN LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 H ĐẾ TÀI ho a C N TT -Ð H K NGHIÊNCỨUCÁCTHUẬTTOÁNTẠOBÓNGTRONGĐỒHỌABACHIỀUTƯƠNGTÁCTHỜIGIANTHỰC K HƯỚNG DẪN : THỰC HIỆN : Th.S ĐINH NGUYỄN ANH DŨNG NGUYỄN VĂN THÀNH 9912072 NGUYỄN THANH SƠN 9912062 Tp Hồ Chí Minh, 7/2003 Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 LỜI CẢM ƠN Chúng em xin gửi lời cảm ơn tới thầy cô khoa Công nghệ thông tin trường Đại học Khoa học tự nhiên, người ân cần dạy dỗ cho M chúng em kiến thức bổ ích quý giá suốt năm học qua, H C người trang bị cho chúng em hành trang quý giá để bước vào đời TP Chúng em xin gửi lời cảm ơn sâu sắc tới thầy Đinh Nguyễn Anh Dũng, TN người tận tình bảo hướng dẫn chúng em thực tốt luận văn tốt H nghiệp K Chúng em xin gửi lời cảm ơn tới gia đình bạn bè, hậu phương vững -Ð H cho tiền tuyến chúng em suốt năm học gian khổ, gần cho chúng em nguồn động viên to lớn tinh thần vật chất để chúng em TT hoàn thành tốt luận văn tốt nghiệp C N Chúng em xin gửi lời cảm ơn tới giúp đỡ anh Trần Thế Vinh dành K ho a cho chúng em thờigianthực luận văn -2- Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 MỤC LỤC LỜI CẢM ƠN MỤC LỤC M PHẦN : MỞ ĐẨU BÓNGTRONGĐỒHỌABACHIỀUTƯƠNGTÁC II MỤC TIÊU CỦA LUẬN VĂN H C I CÁCTHUẬT NGỮ VÀ CHỮ VIẾT TẮT 10 TN IV TP III CẤU TRÚC CỦA LUẬN VĂN 10 PHẦN : KỸ THUẬT KIỂM TRA STENCIL TRÊN TỪNG ĐIỂM ẢNH 13 GIỚI THIỆU 13 II Ý TƯỞNG CHÍNH 14 K H I -Ð H III KỸ THUẬT KIỂM TRA STENCIL TRÊN TỪNG ĐIỂM ẢNH 15 PHẦN : CÁCTHUẬTTOÁNTẠOBÓNG 19 PLANAR SHADOW 19 TT I C N 1) GIỚI THIỆU 19 2) KHÔNG ÁP DỤNG KỸ THUẬT STENCIL TEST 22 ho a 3) ÁP DỤNG KỸ THUẬT STENCIL TEST 23 4) CÁC CẢI TIẾN QUAN TRỌNG 26 5) ƯU ĐIỂM 28 K 6) KHUYẾT ĐIỂM 28 7) NHẬN XÉT 28 II SHADOW VOLUME 29 1) GIỚI THIỆU 29 2) SHADOW VOLUME 30 a TÍNH SILHOUETTE 30 b TÍNH SHADOW VOLUME 33 -3- Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 3) THUẬTTOÁN SHADOW VOLUME 33 a THUẬTTOÁN 33 b CÁC CẢI TIẾN QUAN TRỌNG 37 4) ƯU ĐIỂM 49 5) KHUYẾT ĐIỂM 50 6) NHẬN XÉT 50 III PROJECTIVE SHADOW MAPPING 51 M 1) Ý TƯỞNG CHÍNH 51 H C 2) TẠO SHADOW MAP 52 3) CHIẾU SHADOW MAP LÊN VẬT HỨNG BÓNG 57 TP 4) ƯU ĐIỂM 59 5) KHUYẾT ĐIỂM 59 TN 6) NHẬN XÉT 60 H PHẦN : ĐÁNH GIÁ VÀ CÁC HƯỚNG PHÁT TRIỂN 61 HỆ THỐNG ĐIỀU KHIỂN 61 II YÊU CẦU 61 -Ð H K I III ĐÁNH GIÁ VÀ KẾT LUẬN 62 TT PHỤ LỤC 64 K ho a C N TÀI LIỆU THAM KHẢO 68 -4- Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 PHẦN : MỞ ĐẦU Trongthực tế, người cảm nhận giới giác quan M Một vật thể cảm nhận xúc giác qua sờ mó hay H C cảm nhận mùi qua khứu giác , nhiên chừng mực nói cảm nhận vật thể thị giác qua màu sắc, đặc TP điểm, hình dạng, … cho người cảm nhận đầy đủ, trực quan TN rõ ràng Vì xây dựng chương trình máy tính mô vật thể, tượng giới thực K vấn đề mà họ xem xét H cung cấp cho người dùng cách tiếp cận thị giác trực quan -Ð H Với công nghệ phần cứng máy tính nay, hạn chế phần cứng chương trình đồhọabachiều phần giải quyết, TT công nghệ đồhọabachiều quan tâm C N phát triển giới Các nhóm chương trình ứng dụng đồhọabachiều kể : ho a Hỗ trợ thiết kế : Một ứng dụng đồhọabachiều máy tính chương trình hỗ trợ thiết kế CAD, 3D K Max, Maya, Poser, … Các chương trình sử dụng cho công việc thiết kế nhà cửa, quần áo, phương tiện giao thông, dụng cụ, mô hình người, … Giáo dục đào tạo : Các chương trình mô ( thực ảo) : mô sinh họa, hóa học, vật lý học, mô phóng tàu vũ trụ, lái xe, lái máy bay, bảng đồ thông tin địa lý GIS… -5- Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 Giải trí nghệ thuật : Các chương trình thiết kế mỹ thuật, tạo mô hình cho việc quy hoạch,… cho phép tạo dựng hiệu chỉnh kiến trúc công trình, cho phép quan sát nhiều góc độ để có nhìn tổng quan công trình từ đưa chỉnh sửa phù hợp Ngoài đồhọabachiều giúp tạo chương trình trò chơi giải trí; hỗ trợ kỹ xảo điện ảnh M Du lịch ảo : cho du khách tham quan tươngtác với H C giới giống giới thật mà không cần phải tới tận nơi, tốn chi phí cho chuyến du lịch TP Vấn đề quan trọngđồhọabachiều làm thể TN hình ảnh giới lên hình máy tính cách trung K H thực -Ð H I BÓNGTRONGĐỒHỌABACHIỀUTƯƠNGTÁC Trên giới thực người nhìn giới qua ánh sáng, ánh sáng lại TT đôi với bóng, đâu có ánh sáng có bóngDo thể hai yếu tố bóng ánh sáng làm tăng tính trung thực C N hình ảnh bachiều máy tính Khi người dùng giao tiếp với chương trình đồhọabachiều máy ho a tính họ thường có cảm giác đối tượng lơ lửng không K gianthực tế chúng nằm bề mặt đó, camera đứng yên chỗ, người dùng khó nhận chiều sâu vị trí tương đối đối tượng Nếu chương trình đồhọabachiều có cài đặt kỹ thuật làm bóng cho đối tượng giúp người dùng dễ dàng cảm nhận giới chương trình Chính vậy, chương trình đồhọaba chiều, cho dù tạobóng cho đối tượngdở không tạobóng cho chúng -6- Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 .H C M LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 B TP A Chúng ta dễ nhận biết vị trí khối hộp hình B hình A TN Trongthực tế, ánh sáng hạt photon lượng, ánh sáng chiếu vào vật thể đó, hạt photon phần hấp thụ, K H phần phản xạ lại vật thể Nơi hạt photon -Ð H chiếu tới hay chiếu tới với cường độ yếu nơi có bóngTrongđồhọaba chiều, cách tính toán để tạobóngtạobóng giới thực nhiên kỹ thuật phức tạp tốn nhiều chi phí TT Chúng ta phải giải nhiều toán khó cách tiếp cận này, C N toán phản xạ, hấp thụ, toán giao tia đa giác,… quan trọng phải tính toán điểm ảnh ho a không gian giới ba chiều, không gian giới rộng lớn tốc độ xử lý chậm, hệ thống phần cứng máy tính thông dụng K cón hạn chế nên kỹ thuậtthực hệ thống thờigianthựcCác kỹ thuậttạobóngthực thường áp dụng thiết bị chuyên dụng đặc biệt xuất thành phim hay dựng lên mô hình bachiều tĩnh Có hai kỹ thuậttạobóngthực tiếng Ray Trace Radiosity nhiên luận văn không trọng tới việc xây dựng thuậttoántạo -7- Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 bóng mà tập trung vào nghiêncứuthuậttoántạobóng hệ thống mang tính thờigianthựcTrong hệ thống thờigian thực, phải áp dụng thuậttoántạobóng giả, thuậttoánđộ xác 100% nhiên chúng cho bóng chấp nhận thị giác người Độ phức tạp chi phí tính toánthuậttoán thấp nhiều so với M thuậttoántạobóngthựcthuậttoán khả thi hệ H C thống máy tính thông thường áp dụng chương trình đồhọabachiều mang tính tương tác, thờigianthực Từ phần luận TP văn nói thuậttoántạo bóng, xin hiểu thuậttoántạobóng giả TN Cácthuậttoántạobóng (giả) đồhọabachiềunghiêncứu từ năm 80 kỷ trước Có thể kể thành tựu lớn việc K H nghiêncứubóngthờigian này, : -Ð H Thuậttoántạobóng dựa phép chiếu Jim Blinn năm 1988 cải tiến vào năm 1996 Thuậttoántạobóng mặt phẳng Thant Tessman năm 1989 TT Ý tưởng sơ khai shadow volume Pllippe Bergeron năm 1986 C N Ý tưởng việc sử dụng thành phần độ sâu William Reeves, David Salesin Robert Cook năm 1987 ho a Tuy nhiên ý tưởngthuậttoán sơ khai, chưa hoàn chỉnh thiếu hỗ trợ mặt công nghệ nên chưa thể thực tốt K thờigian phải tới thập kỷ 1990 vấn đề việc tạobóngđồhọabachiềutươngtácthực theo thuậttoán máy tính Từ thập kỷ 1990 tới thờigian có nhiều thành tựu to lớn bóng với : -8- Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 Thuậttoántạobóng mặt phẳng (Planar Shadow) Schilling, Andreas, G.Knittel Wolfgang năm 1996 Thuậttoán vùng bóng (shadow volume) Heidmann năm 1991 – cải tiến Tom McReynolds David Blythe năm 1997 – Yen Kwoon, Eric Lengyel năm 2002, cải tiến Tom Hall năm 2003 M Thuậttoán Shadow Mapping Mark J.Kilgard năm 2000 H C Thuậttoán Projective Shadow Mapping Mark A.Deloura năm 2000 TP Mặc dù vậy, tính phức tạp cài đặt thuậttoán giới TN rộng lớn thuậttoán có ưu điểm khuyết điểm, khó để áp dụng trường hợp tổng quát nên thực tế có số -Ð H K H chương trình có cài đặt kỹ thuậttạobóng II MỤC TIÊU CỦA LUẬN VĂN TT Bài toántạobóng giả toán khó đồhọabachiềuthờigian thực, đề tài thu hút nhiều quan tâm C N trung tâm nghiêncứu trường đại học giới Đây lĩnh vực chưa giải trọn vẹn, mở nhiều hướng ho a nghiên cứu, phát triển tương lai Trước thực trạng đề tài K hướng tới mục tiêu sau Nghiêncứu cài đặt thử nghiệm thuậttoántạobóng phổ biến hiệu cao đồhọabachiềuthờigianthực nay, bao gồm : o Thuậttoántạobóng phẳng Planar Shadow o Thuậttoántạobóng Shadow Volume o Thuậttoán Projective Shadow Mapping -9- Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 Xây dựng mô hình nhà tù Chuồng Cọp thuộc Bảo Tàng Di Tích Chiến Tranh thành phố Hồ Chí Minh, cài đặt thuậttoántạobóng mô hình nhằm minh họabóng giới tươngtácthờigianthực III CẤU TRÚC CỦA LUẬN VĂN H C M Nội dung luận văn chia làm phần Phần – Phần mở đầu TP Phần – Kỹ thuật kiểm tra stencil điểm ảnh : Phần trình bày kỹ thuật kiểm tra stencil điểm ảnh áp TN dụng cho thuậttoántạobóng để giới hạn vùng bóng Đây H phần tùy chọn mô tả kỹ thuậtđồhọabachiều bỏ qua K biết -Ð H Phần – Cácthuậttoántạobóng : Giới thiệu thuậttoántạobóngnghiêncứu luận văn, đưa đánh giá ưu TT khuyết điểm thuậttoán Phần – Đánh giá hướng phát triển : Đánh giá kết đạt C N luận văn hướng phát triển ho a IV.THUẬT NGỮ VÀ CHỮ VIẾT TẮT Ý nghĩa K Thuật ngữ Một điểm ảnh không gianba chiều, có Pixel thuộc tính màu, độ sâu, độ alpha giá trị stencil Texture Các hình ảnh dán lên bề mặt đó, làm cho bề mặt giống thật - 10 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 Nếu Zlight = (0.381, 0.889, 0.254) V = (0.0, 0.0, 1.0) Nếu Zlight = (-0.889, 0.254, 0.381) V = (0.0, 1.0, 0.0) Kết tích hữu hướng Zlight V vector vuông góc H C M với hai, sau chuẩn hóa ta Xlight TN TP Sau có Xlight Zlight ta tính Ylight H Vì X-Zlight vector đơn vị nên không cần chuẩn hóa Ylight K Từ Xlight, Ylight, Zlight, Plight biết, ta tạo ma trận ho a C N TT -Ð H ánh xạ điểm từ hệ tọa độ giới thực sang hệ tọa độ nguồn sáng K Bước tính ma trận để chuyển đổi từ hệ tọa độ vật chắn sáng sang hệ trục tọa độ nguồn sáng Ta có : MBlockerLocalToLight = MBlockerLocalToWorld * MWorldToLight Với MBlockerLocalToLight ma trận để chuyển đổi từ hệ tọa độ vật chắn sáng sang hệ trục tọa độ nguồn sáng, MBlockerLocalToWorld ma trận để chuyển đổi từ hệ tọa độ vật chắn sáng sang hệ trục tọa độ - 56 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 giới thực, MWorldToLight ma trận để chuyển đổi từ hệ tọa độ giới thực sang hệ trục tọa độ nguồn sáng Vì mặt phẳng ảo dùng phép chiếutạo shadow map song song với mặt phẳng X-Ylight nên ta xác định ma trận chiếu để tạo shadow map Xác định phép chiếu phối cảnh H C M Để xác định phép chiếu ta cần góc chiếu hay tỷ lệ chiếu trục X, Y Các tỷ lệ chiếu RX, RY cho đỉnh vật chắn sáng xác TP định qua phép biến đổi với ma trận MBlockerLocalToLight chia kết Phép chiếu thích hợp -Ð H K H TN trục X, Y cho trục Z TT Chúng ta luôn thực phép chiếu để tạo shadow map, C N nhiên silhouette vật chắn sáng bị thay đổi ta thay đổi vị trí nguồn sáng xa lại gần hay kích cỡ vật chắn sáng bị ho a thay đổi Sự thay đổi silhouette dẫn tới ảnh chiếu nhỏ silhouette shadow map hay lớn shadow map, kích K thước silhouette vật chắn sáng không vừa khớp với shadow map, chiếu lên vật hứng bóng cho bóng không thích hợp - 57 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 A B C M Không thích hợpA-B, thích hợp C H C Để thực phép chiếu thích hợp cho ánh xạ vật chắn sáng vừa vặn vào shadow map ta sử dụng giá trị lớn RX (RXmax) TP làm tỉ lệ ngang phép chiếu RY (RYmax) làm tỉ lệ dọc phép -Ð H K H TN chiếu Ta tìm ma trận chiếu sau TT Với SMapWidth SMapHeight độ phân giải theo chiều ngang C N dọc shadow map, Znear, Zfar khoảng cách tới mặt phẳng near far view frustum nguồn sáng ho a Nhân ma trận với ma trận MBolckerLocalToLight ta ma trận phép chiếu vật thể từ hệ tọa độ cục thành hệ tọa độ texture K Shadow Map MBolckerLocalToShadowMap = MBolckerLocalToLight* MBolckerProjection Chiếu Shadow map lên vật hứng bóng Từ bước xử lý bên ta có shadow map vật chắn sáng ứng với nguồn sáng Shadow map chiếu lên hay - 58 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 nhiều vật hứng bóng cho dù vật hứng bóng có hình dáng shadow map áp lên texture Chúng ta sử dụng lại phép chiếu để tạo shadow map để chiếu shadow map lên vật hứng bóng Ma trận chiếu thay đổi hệ số viền tỷ lệ để phù hợp cho việc chiếu shadow map lên vật hứng bóng, ta có TN TP H C M ma trận chiếu shadow map lên vật hứng bóng MReceiverProjection sau H Nhân ma trận với ma trận MWorldToLight ta ma trận phép K chiếu từ hệ tọa độ giới thực sang hệ tọa độ texture Shadow Map -Ð H MWorldToShadowMap = MWorldToLight* MReceiverProjection Nhân tiếp ma trận MWorldToShadowMap với ma trận TT MReceiverLocalToWorld để ma trận phép chiếu từ hệ tọa độ cục C N vật hứng sáng sang hệ tọa độ texture Shadow Map MReceiverLocalToShadowMap = MReceiverLocalToWorld * MWorldToShadowMap ho a Chúng ta sử dụng hệ số viền 0.98 0.49 thay cho 0.5 hai ma trận MBlockerProjection MReceiverProjection để không ánh xạ K shadow map lên viền texture bóng vật hứng bóng, tránh tượng tự động lặp lại texture viền toàn bề mặt vật hứng bóng Render vật hứng bóng - 59 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 Cách render Single-pass : Nếu vật hứng bóng texture render vật thể với texture shadow map đen trắng chiếu sáng vật hứng bóng Cách render Multi-pass : Nếu vật hứng bóng thân có sẵn texture phải dán thêm texture shadow map lên vị trí thích hợp Render đối tượng nhiều lần với texture M khác trộn chúng lại theo cách thức khác Nếu H C phần cứng có hỗ trợ kỹ thuật multitexture dán TP texture shadow map vào, sau blend hai texture với TN Ưu điểm H Đổbóng mặt cong, mặt hình học phức tạp K Do trình tạo shadow map trình render bình thường nên -Ð H render vật chắn sáng với độ suốt hay độ mờ đục TT Khuyết điểm C N Tốn thêm thờigian cho trình render shadow map: Thờigian xoá frame buffer ho a Thờigian chép liệu từ frame buffer sang nhớ (cả CPU GPU phải đồng thời xử lý) K Chất lượng bóng phụ thuộc vào Kích thước texture làm shadow map, trình render vật chắn sáng tạo shadow map : Có thể xảy tượng hình ảnh vật chắn sáng nằm phần nhỏ shadow map dẫn đến lãng phí nhớ đạt chất lượng bóngtương đương với shadow map có độ phân giải thấp đường cạnh vật - 60 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 chắn sáng không song song với phương ngang phương thẳng đứng => hình thành đương biên nghiêng gây cưa shadow map Độ xa gần bề mặt đổbóng Kích thước vật chắn sáng Thờigian render bóng phụ thuộc vào vật hứng bóng Vì chất M chức multitexture trình render đối tượng nhiều lần với H C texture khác trộn chúng lại theo cách thức khác nên trình render bóng lên đối tượng hình học phức tạp lâu TP bề mặt đơn giản TN Không có khả tự đổbóng lên vật thể chắn sáng K H Có tượngđổbóng ngược -Ð H Nhận xét Đâ thuậttoán thường áp dụng giới có vật dụng TT thủy tinh bề mặt đơn giản, đổbóng vật thể phức tạp tốn chi phí, bóng phụ C N thuộc vào kích thước shadow map nên muốn bóng chất lượng cao K ho a phải tốn nhớ để tăng kích thước texture - 61 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 TP H C M LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 TN PHẦN : KẾT QUẢ CÀI ĐẶT VÀ -Ð H K H ỨNG DỤNG Luận văn xây dựng giới bachiềutương đối hoàn hảo TT giống với thực tế, cho phép người dùng tươngtác với giới Các hiệu ứng mặt ánh sáng, tính chất vật lý rơi, dụng chạm hiệu ứng C N bóng cài đặt để làm tăng tính trung thực tăng cảm nhận ho a xác người dùng giới I.HỆ THỐNG ĐIỀU KHIỂN K Chuột : Quay góc nhìn W : Di chuyển tới S : Di chuyển lui A : Di chuyển sang trái D : Di chuyển sang phải H / F1 : Bật hình trợ giúp - 62 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 P : Chuyển đổi qua lại trạng thái không bóng, shadow volume, planar shadow projective shadow mapping C : Bật tắt chế độ xét va chạm camera với giớI > / < : Tăng giảm tốc độ V : Bật tắt chế độ quan sát silhouette/ shadow volume/ shadow thuậttoán shadow volume M I : Thay đổi kích thước shadow map H C L : Bật tắt dao động đèn TP II YÊU CẦU TN CPU Pentium III 750 MHz H Hệ điều hành : Windows ME, Windows 2000, Windows XP K Bộ nhớ 128 MB RAM -Ð H Card đồhọa GeForce3 32MB nhớ( đề tài có sử dụng hàm mở rộng phần cứng GenOcclusionQueriesNV nằm phần cứng TT card đồhọa GeForce trở lên ) C N Driver card đồhọa có hỗ trợ OpenGL ho a III ĐÁNH GIÁ VÀ KẾT LUẬN Luận văn hoàn thành mục tiêu ban đầu đề nghiêncứu cài K đặt hoàn chỉnh thuậttoántạobóng phổ biến hiệu planar shadow, shadow volume projective shadow mapping Không dừng lại chương trình minh họa đơn giản cục bộ, cài đặt thuậttoántạobóng nguyên thủy, đề tài tập trung nghiêncứu ưu khuyết điểm, hướng cải tiến thuậttoántạobóng để thuậttoántạobóng áp dụng vào giới - 63 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 bachiềutươngtác rộng lớn thờigianthực Điều chứng minh qua việc cài đặt thành công thuậttoántạobóng mô hình nhà tù Chuồng Cọp thuộc Bảo Tàng Di Tích Chiến Tranh thành phố Hồ Chí Minh Trong trò chơi bachiều phổ biến nay, việc tạobóng cho nhân vật vật thể giới toán chưa giải trọn vẹn chưa khắc phục triệt để khuyết điểm thuậttoán M tạobóng áp dụng vào môi trường ứng dụng thực tế Các trò chơi H C bachiều công ty tiếng phát triển : NeverWinter Nights năm 2002, Tiger Wood 2002, Enter the Matrix năm 2003, … TP bộc lộ số hạn chế sai sót kỹ thuậttạobóng Luận văn TN đưa hướng giải tương đối phù hợp cho việc đưa thuậttoántạobóng vào chương trình đồhọabachiềutươngtácthời K H gianthựcTrong hướng giải kết hợp thuậttoán -Ð H nguyên thủy với cải tiến xuất phát từ nhiều công trình nghiêncứu khoa học giới Tuy thờigianthực hạn hẹp, luận văn đạt thành TT công đáng khích lệ định Có thể nói thành công bắt C N tay vào đề tài mẻ Việt Nam nói riêng đề tài quan tâm, nghiêncứu nhiều công ho a nghệ đồhọabachiều giới nói chung Thông qua trình nghiêncứu nhận thấy rằng dành cho đồhọabachiều K quan tâm mức, chúng ta, người Việt Nam, hoàn toàn đủ sức để khai phá lĩnh vực này, chí với công nghệ tiên tiến Mô hình luận văn mở rộng theo nhiều hướng để tạo chương trình ứng dụng thực tế : Tham quan Bảo Tàng Di Tích Chiến Tranh, mô hình giới trò chơi, mô hình mô phỏng,… mục tiêu phấn đấu tương lai - 64 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 K H TN TP H C M LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 -Ð H PHỤ LỤC TT GIÁ TRỊ HIỆN HÀNH VÀ DỮ LIỆU LIÊN QUAN C N Biến giá trị Khởi tạo mặc Hàm lấy giá định trị GL_FALSE GL_STENCIL_FUNC GL_ALWAYS glGetIntegerv() 1’s glGetIntegerv() GL_STENCIL_REF glGetIntegerv() GL_STENCIL_FAIL GL_KEEP glGetIntegerv() GL_STENCIL_PASS_DEPTH_FAIL GL_KEEP glGetIntegerv() GL_STENCIL_PASS_DEPTH_PASS GL_KEEP glGetIntegerv() 1’s glGetIntegerv() ho a GL_STENCIL_TEST K GL_STENCIL_VALUE_MASK GL_STENCIL_WRITEMASK - 65 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 glIsEnable() LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 GL_STENCIL_CLEAR_VALUE glGetIntegerv() GL_DEPTH_TEST GL_FALSE GL_DEPTH_FUNC GL_LESS glIsEnable() glGetIntegerv() CÁC MA TRẬN CHUYỂN ĐỔI Tịnh tiến : TN TP H C M Tịnh tiến tới tọa độ (x,y,z,1) TT -Ð H K H Ma trận khả nghịch : C N Biến đổi tỷ lệ : K ho a Thay đổi tỷ lệ x,y,z trục Ma trận khả nghịch : - 66 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 M LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 H C Quay : K H TN TP Quay quanh trục x góc a : C N TT -Ð H Quay quanh trục y góc a : K ho a Quay quanh trục z góc a : Phép chiếu phối cảnh : - 67 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 Phép chiếu phối cảnh với chóp nhìn (view frustum) có giá trị trái l, TP H C M phải r, b, t, gần n, xa f : TT -Ð H K H TN Ma trận khả nghịch : C N Phép chiếu song song : ho a Phép chiếu song song với khối nhìn (view volume) có giá trị trái l, phải K r, b, t, gần n, xa f : - 68 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 M LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 TT -Ð H K H TN TP H C Ma trận khả nghịch : ho a C N TÀI LIỆU THAM KHẢO [1] : Ashu Rege, Occlusion (HP and NV Extensions) (HP and NV K Extensions), NVIDIA Corporation, 1/2003 [2] : Tom Hall, Silhouette Tracking, www.geocities.com/tom_j_hall, 5/2003 [3] : Eric Lengyel, The Mechanics of Robust Stencil Shadows, Gamasutra, http://www.gamasutra.com/features/20021011/lengyel_01.htm, 10/2002 [4] : Yen Kwoon Hun, The Theory of Stencil Shadow Volumes, Gamedev, http://www.gamedev.net/reference/articles/article1873.asp , 3/2002 - 69 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 LUẬN VĂN TỐT NGHIỆP CỬ NHÂN TIN HỌC KHÓA 99 [5] : Tom Davis, Dave Shreiner, Mason Woo Jackie Neider, OpenGL Programming Guide, Third Edition, Addison Wesley Longman Inc, 1999 [6] : Tomas Moller Eric Haines, Realtime Rendering, A K Peters Ltd, Natick, 1999 [7] : Mark J Kilgard, Improving Shadows and Reflections via the Stencil Buffer, NVIDIA Corporation, 7/2000 M [8] : Mark A.DeLoura, Game Programming Gem, Charles River Media Inc, H C Rockland, Massachusetts, 2000 [9] : Mark J.Kilgard, Shadow Mapping with Today’s OpenGL Harware, TP NVIDIA Corporation, 2001 Shadow Volumes for TN [10] : Cass Everitt Mark J Kilgard, Practical and Robust Stenciled Hardware-Accelerated NVIDIA K H Corporation, 12/2002 Rendering, -Ð H [11] : Tiago Sousa, Real Time Shadow Techniques, Real Time Computer Graphics, 1/2003 Corporation, 12/2002 TT [12] : D Sim Dietrich Jr, Projective Shadows Shadows, NVIDIA C N [13] : Tiago Sousa, Projective Texturing based FX, Real Time Computer Graphics, 12/2002 ho a [14] : Các website nói vấn đề tạobóngđồhọabachiều : www.nehe.gamedev.com, www.gameprogramming.com, www.gamedev.net K , www.gamasutra.com, www.opengl.org - 70 - Viết thuê luận văn thạc sĩ Luanvanaz@mail.com - 0972.162.399 [...]... đặc TT Thuậttoán tính silhouette là một phần tính toán tốn nhiều chi phí của thuật toántạo shadow volume, dođó việc tính toán ra silhouette ảnh C N hưởng rất lớn đối với bóng, nhất là bóngtrongthờigianthực ( bóng được tính lại trong mọi thời điểm ) ho a Thuậttoán của Yen Kwoon, Hun : K Thuậttoán này không xem xét hết tất cả các cạnh trên lưới tam giác của vật chắn sáng mà chỉ xem xét các cạnh... hướng bóng, shadow volume được tạo ra bởi nguồn sáng và vật chắn sáng sẽ chia không gian ra thành các vùng có bóng và các vùng không có bóng Ý tưởng chính của thuật toán shadow volume là sử dụng kỹ thuật stencil test để gán các giá trị stencil khác nhau cho các điểm ảnh thuộc vùng bóng và không bóng Để tạo ra các M điểm và các giá trị stencil tương ứng ta sử dụng kết quả của cáctoán H C tử trong kỹ thuật. .. phải có một kỹ thuật mạnh hơn kỹ thuật planar shadow M để tạo ra bóngtrong trường hợp này đó là kỹ thuậttạobóng dựa vào H C vùng bóng (shadow volume) Trong thế giới thực khi một vật thể chắn một nguồn sáng nó sẽ tạo ra TP một vùng không gian không được chiếu sáng bởi nguồn sáng đó, vùng TN không gian này này được gọi là shadow volume Ý tưởng chính của thuậttoántạobóng dựa vào vùng bóng (shadow... tiếp, các xử lý tương ứng sẽ được thực hiện đối với từng sự thay đổi TN Trong một thế giới bachiều có bóng, một điểm ảnh có thể ở một trong hai H trạng thái, nằm trong vùng bóng hay nằm ngoài vùng bóng Chúng ta sẽ K gán giá trị stencil tương ứng cho tất cả cả các điểm ảnh, sau đó điều chỉnh -Ð H các hàm của kỹ thuật stencil test sao cho chỉ cập nhật giá trị stencil của các điểm ảnh nằm trong vùng bóng. .. giới bachiều này mà TT không có ánh sáng Sau đó lại điều chỉnh các hàm của kỹ thuật stencil test sao cho chỉ cập nhật giá trị stencil cuả các điểm ảnh nằm ngoài vùng bóng, C N render lại thế giới bachiều một lần nữa với ánh sáng Các điểm ảnh nằm trong vùng bóng sẽ được render trong trạng thái không có ánh sáng và các ho a điểm ngoài vùng bóng sẽ được render trong trạng thái có ánh sáng và tạo ra K bóng. .. tự các đỉnh ngược chiều kim đồng hồ Các cạnh được render đứt Thuậttoán được phát biểu như sau : K H Đầu vào : TN các cạnh được xét TP đoạn là các cạnh ta không quan tâm tới, các cạnh render liền nét là -Ð H Vật thể chắn sáng với các mặt đã được chuẩn hóa đưa về dạng lưới các tam giác Lưới tam giác của vật thể khép kín C N Thuậttoán : TT Một stack lưu các cạnh Duyệt qua tất cả các tam giác trong. .. Đối với bóngtạo với kỹ thuật stencil, nếu phần cứng có hỗ trợ stencil K 6 Khuyết điểm -Ð H Chỉ tạo được bóng trên các mặt phẳng Bóng của vật thể hình chiếu của vật thể nên có số lượng đa giác và độ TT phức tạp và tốn chi phí render như nhau trong khi bóngtrongthực tế C N đơn giản hơn vật chắn sáng nhiều ho a Không có khả năng tự đổbóng lên chính vật thể chắn sáng 7 Nhận xét K Thuật toántạobóng Planar... vật hứng sáng, một mặt hứng bóng thì các TN thuật toántạobóng rất đơn giảndo chỉ có một bóng duy nhất đổ lên một mặt, tuy nhiên khi chúng ta dựng lên một thế giới bachiều mô phỏng thế H giới thực thì thế giới bachiềuđó không chỉ có một mà có rất nhiều nguồn K sáng, vật chắn sáng và mặt hứng bóng, dođó có rất nhiều bóngđổ lên -Ð H nhiều mặt khác nhau và có khi một bóngđổ lên rất nhiều mặt Vấn... chỉ render bóng tại điểm ảnh nào có giá trị stencil là 1 Bóng được tạo ra sẽ chỉ nằm trong vùng giới hạn bởi mặt phẳng hứng bóng mà không được render ở các vùng nằm ngoài mặt phẳng hứng bóng M Thuậttoán phát biểu như sau : H C Đầu vào : Một nguồn sáng điểm TP Một mặt phẳng TN Một vật chắn sáng Thuậttoán : K H Tính toán ma trận Model View trong phép biến đổi view -Ð H tranform Bật chế độ kiểm... trên từng điểm ảnh (stencil test) là một kỹ thuậtthực hiện trên từng điểm ảnh tương tự như kỹ thuật kiểm tra độ sâu của từng điểm ảnh trongđồhọabachiều (depth test), depth test kiểm tra và điều chỉnh giá trị độ sâu của điểm ảnh trong depth buffer còn stencil test kiểm tra và điều chỉnh giá trị stencil của điểm ảnh trong stencil bufer .H C M Trong kỹ thuật stencil test khi render, mỗi một điểm