Có nhiều phương pháp khác nhau để tạo dựng cũng như biểu diễn các đối tượng trong không gian 3D như sử dụng mô hình khung lưới hoặc sử dụng ảnh chụp của đối tượng từ các góc độ khác nhau
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Trần Trung
Billboard và giả lập mô hình 3D trong thực tại ảo
LUẬN VĂN THẠC SĨ
Hà Nội - 2007
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Trần Trung
Billboard và giả lập mô hình 3D trong thực tại ảo
Ngành: Công Nghệ Thông tin
Trang 3LỜI CAM ĐOAN
Nội dung luận văn này chưa từng được công bố hay xuất bản dưới bất kỳ
hình thức nào và cũng không được sao chép từ bất kỳ một công trình nghiên cứu
nào
Tất cả phần mã nguồn của chương trình đều do tôi tự thiết kế và xây dựng,
trong đó có sử dụng một số thư viện chuẩn và các thuật toán được các tác giả
xuất bản công khai và miễn phí trên mạng Internet
Nếu sai tôi xin tôi xin hoàn toàn chịu trách nhiệm
Hà nội, ngày 15 tháng 9 năm 2008
Người cam đoan
Nguyễn Trần Trung
Trang 4LỜI CẢM ƠN
Trong quá trình thực hiện luận văn này, em luôn nhận được sự hướng dẫn, chỉ bảo tận tình của thầy giáo, PGS TS Đỗ Năng Toàn, Viện Công nghệ Thông tin thuộc Viện Khoa học và Công nghệ Việt Nam là cán bộ trực tiếp hướng dẫn khoa học cho em
Em xin chân thành cảm ơn sự giúp đỡ quý báu đó
Em xin chân thành cảm ơn các Thầy, Cô giáo trong khoa Công nghệ thông tin và các cán bộ, nhân viên các phòng Đào tạo Sau đại học, trường Đại học Công nghệ, Đại học Quốc gia Hà Nội đã luôn nhiệt tình giúp đỡ
và tạo điều kiện tốt nhất cho em trong suốt quá trình học tập tại trường
Xin chân thành cảm ơn các anh, các chị và các bạn học viên lớp Cao học K12T2 - trường Đại học Công nghệ thuộc Đại học Quốc gia Hà Nội đã luôn động viên, giúp đỡ và nhiệt tình chia sẻ với tôi những kinh nghiệm học tập, công tác trong suốt khoá học
Tôi cũng xin chân thành cảm ơn các vị lãnh đạo và các bạn đồng nghiệp tại trường Đại học Dân lập Hải Phòng đã luôn tạo mọi điều kiện tốt nhất để tôi có thể hoàn thành tốt đẹp khoá học Cao học này
Hà Nội, ngày 15 tháng 9 năm 2008
Nguyễn Trần Trung
Trang 5MỤC LỤC
LỜI CAM ĐOAN 1
LỜI CẢM ƠN 2
MỤC LỤC 3
DANH MỤC CÁC HÌNH VẼ 4
PHẦN MỞ ĐẦU 5
CHƯƠNG 1: TỔNG QUAN VỀ THỰC TẠI ẢO VÀ ĐỒ HỌA 3D 7
1.1 Thực tại ảo và ứng dụng 7
1.1.1 Thực tại ảo là gì? 7
1.1.2 Sơ lược lịch sử phát triển 10
1.1.3 Các ứng dụng cơ bản của Thực tại ảo 11
1.1.3.1 Kiến trúc và thiết kế thiết bị công nghệ 11
1.1.3.2 Giải trí 13
1.1.3.3 Giáo dục và Đào tạo 14
1.1.3.4 Y học 15
1.2 Biểu diễn mô hình 3D 17
1.2.1 Sơ lược về quy trình hiển thị 17
1.2.2 Mô hình khung nối kết (Wireframe Model) 19
1.2.2.1 Khái niệm 19
1.2.2.2 Biểu diễn các vật thể ba chiều bằng mô hình khung nối kết 19
1.2.2.3 Vẽ các đối tượng theo mô hình khung nối kết bằng cách sử dụng các phép chiếu 21
1.2.3 Biểu diễn đối tượng ba chiều 27
1.2.3.1 Biểu diễn mặt đa giác 28
1.3 Tổng quan về Billboard 35
CHƯƠNG 2: CÁC KỸ THUẬT TẠO LẬP BILLBOARD 37
2.1 Các kỹ thuật billboard trụ 37
2.1.1 Kỹ thuật giả billboard trụ 37
2.1.2 Billboard trụ thực sự 41
2.1.3 Ưu điểm và những hạn chế của phương pháp billboard trụ 45
2.2 Các kỹ thuật billboard cầu 46
2.2.1 Kỹ thuật giả billboard cầu 46
2.2.2 Billboard cầu thực sự 51
2.2.3 Ưu điểm và nhược điểm của phương pháp billboard cầu 54
CHƯƠNG 3: ỨNG DỤNG BILLBOARD TRONG GIẢ LẬP ĐỐI TƯỢNG 3D 56
3.1 Mô tả ứng dụng 56
3.2 Một số kết quả 57
PHẦN KẾT LUẬN 62
TÀI LIỆU THAM KHẢO 63
Trang 6DANH MỤC CÁC HÌNH VẼ
1.1 Ứng dụng thực tại ảo trong thiết kế kiến trúc 11
1.2 Ứng dụng công nghệ Thực tại ảo trong thiết kế thiết bị công nghệ 12
1.3 Ứng dụng thực tại ảo trong lĩnh vực giải trí 13
1.4 Mô hình huấn luyện bay sử dụng công nghệ Thực tại ảo 14
1.5 Phẫu thuật ảo – Phương pháp đào tạo phẫu thuật mới dùng công nghệ Thực tại ảo 16 1.6 Quy trình hiển thị đối tượng ba chiều 17
1.7 Vật thể ba chiều được biểu diễn bằng mô hình khung nối kết 20
1.8 Phép chiếu song song (a) và phép chiếu phối cảnh (b) 22
1.9 Phép chiếu trực giao 23
1.10 Kết quả của ba phép chiếu trực giao 24
1.11 Phép chiếu xiên 24
1.12 Phép chiếu phối cảnh đơn giản 25
1.13 Mô hình wireframe của một hình trụ 28
1.14 Vector pháp tuyến của mặt phẳng 31
1.15 Vector pháp tuyến hướng từ trong ra ngoài 31
1.16 Minh họa cách xác định mặt phẳng 33
1.17 Cách tạo ra một patch 34
1.18 Strip và quadrilateral mesh 34
2.1 Cách quay đối tượng trong kỹ thuật billboard trụ thực sự 41
2.2 Xác định góc quay trong billboard trụ thực sự (a) 42
2.3 Xác định góc quay trong billboard trụ thực sự (b) 43
2.4 Xác định góc quay trong billboard trụ thực sự (c) 43
2.5 Phương pháp giả billboard cầu 47
2.6 Bản chất của phương pháp giả billboard cầu 47
2.7 Phép quay đối tượng quanh right vector 51
3.1 Những cái cây khi chưa áp dụng kỹ thuật billboard 57
3.2 Những cái cây sau khi áp dụng kỹ thuật giả billboard trụ 57
3.3 Áp dụng phương pháp giả billboard trụ 58
3.4 Áp dụng phương pháp billboard trụ thực sự 58
3.5 Áp dụng phương pháp giả billboard cầu 60
3.6 Áp dụng phương pháp billboard cầu thực sự 60
Trang 7PHẦN MỞ ĐẦU
Ngày nay trước sự phát triển mạnh của các ngành khoa học kỹ thuật
và những ứng dụng của khoa học kỹ thuật vào cuộc sống đã mang lại hiệu quả
to lớn đặc biệt là Công nghệ thông tin Bất kỳ đâu và bất kể lĩnh vực nào của cuộc sống Công nghệ thông tin đều có mặt, hiệu quả mà Công nghệ thông tin mang lại thật to lớn và là điều được tất cả mọi người quan tâm Hiện nay, Công nghệ thông tin ở nước ta đã phát triển khá mạnh mẽ, hiệu quả kinh tế mà Công nghệ thông tin mang lại cũng rất to lớn nhưng chúng ta thường chỉ thấy Công nghệ thông tin trong các chương trình quản lý, kế toán, ngân hàng, hay trên các ứng dụng trang web mà chưa thấy rõ Công nghệ thông tin phát triển theo chiều sâu, phục vụ các ngành công nghiệp sản xuất như:
Tự động hóa, khai thác, thăm dò, hàng không, quân sự Vì vậy chúng ta cần phải
có những nghiên cứu và phát triển Công nghệ thông tin theo chiều sâu hoặc theo khía cạnh nào đó
Sự phát triển của công nghệ thông tin đã đẩy nhanh sự phát triển nhiều lĩnh vực của đời sống xã hội Với sự phát triển của phần cứng về cả phương diện thu nhận và hiển thị đã mở ra nhiều hướng mới cho sự phát triển của phần mềm Trong số đó phải kể đến lĩnh vực thể hiện hình ảnh 3 chiều và thực tại ảo
Có nhiều phương pháp khác nhau để tạo dựng cũng như biểu diễn các đối tượng trong không gian 3D như sử dụng mô hình khung lưới hoặc sử dụng ảnh chụp của đối tượng từ các góc độ khác nhau, kết hợp với các phép biến đổi
đồ họa để dựng lại hình 3D từ các hình 2D…
Với sự phát triển không ngừng của công nghệ chế tạo phần cứng, máy tính ngày càng trở lên mạnh mẽ và đáp ứng tốt hơn những yêu cầu tính toán, xử lý thông tin của con người Tuy nhiên trong lĩnh vực đồ họa máy tính, đặc biệt là
đồ họa 3D – lĩnh vực đòi hỏi phải xử lý một số lượng lớn các đối tượng đồ họa
có kích thước lớn, nhưng vẫn phải đảm bảo thỏa mãn các yêu cầu về mặt
Trang 8thời gian thì thực sự máy tính cũng chưa thể đáp ứng một cách đầy đủ
“không gian” cho việc xử lý hình ảnh Vấn đề đặt ra là cần giảm thiểu không gian lưu trữ đối tượng, để có thể tích hợp đối tượng vào những không gian lớn phục vụ cho việc điều khiển sau này
Hiện nay với sự phát triển của phần cứng đã thúc đẩy sự phát triển của nhiều lĩnh vực khác, đặc biệt là xử lý ảnh và đồ hoạ 3 chiều Những kết quả này hiện nay ở Việt Nam chưa nhiều Xuất phát từ những lý do trên, dưới sự gợi ý của thầy hướng dẫn, em đã chọn đề tài “Billboard và giả lập mô hình 3D trong thực tại ảo”
Bố cục của luận văn gồm Phần mở đầu, Phần kết luận, Tài liệu tham khảo
và 3 chương nội dung, cụ thể:
Chương 1: Tổng quan về Thực tại ảo và đồ họa 3D
Trình bày tổng quan về thực tại ảo, các lĩnh vực ứng dụng cơ bản của thực tại ảo, các kỹ thuật biểu diễn bề mặt trong xây dựng mô hình và đặt ra nhiệm vụ của luận văn là nghiên cứu các kỹ thuật billboard và ứng dụng trong giả lập mô hình 3D
Chương 2: Các kỹ thuật tạo lập Billboard
Trình bày hai phương pháp tạo lập billboard là billboard cầu và billboard trụ, ứng với mỗi phương pháp là các kỹ thuật giả billboard và kỹ thuật billboard thực sự
Chương 3: Ứng dụng trong xây dựng mô hình 3D
Xây dựng chương trình áp dụng các kỹ thuật tạo lập billboard để giả lập đối tượng 3D bằng hình ảnh 2D
Trang 9CHƯƠNG 1: TỔNG QUAN VỀ THỰC TẠI ẢO VÀ ĐỒ HỌA 3D
Công nghệ thông tin đã và đang xuất hiện trong mọi lĩnh vực của xã hội Tuy nhiên phần lớn các mô hình được xây dựng trên máy tính là hai chiều và con người không thể tương tác với các đối tượng trong mô hình đó như là ở trong thế giới thực, những chương trình nghiên cứu khắc phục nhược điểm này
đã dẫn đến việc xuất hiện một lĩnh vực mới của Công nghệ thông tin
đó là thực tại ảo
1.1 Thực tại ảo và ứng dụng
Thực tại ảo là một lĩnh vực mới ở nước ta và có ít công trình nghiên cứu về lĩnh vực mới này tuy nhiên những ứng dụng và hiệu quả của thực tại ảo là vô cùng to lớn ví dụ chúng ta có thể điều khiển một cái máy bay mà không cần có bất kỳ một chiếc máy bay nào hay là thực tập một ca mổ mà không cần phải
sử dụng đến các đối tượng thực
1.1.1 Thực tại ảo là gì?
Thực tại ảo (tiếng Anh là virtual reality, viết tắt là VR) là thuật ngữ miêu tả một môi trường mô phỏng bằng máy tính Đa phần các môi trường thực tại ảo chủ yếu là hình ảnh hiển thị trên màn hình máy tính hay thông qua kính nhìn ba chiều, tuy nhiên một vài mô phỏng cũng có thêm các loại giác quan khác như
âm thanh hay xúc giác
Theo Bách Khoa Toàn Thư Mở tiếng Việt (http://vi.wikipedia.org), bằng một hệ thống mô phỏng có sử dụng đồ họa máy tính, công nghệ VR có thể đưa người ta vào một thế giới nhân tạo với không gian 3 chiều như thật Thế giới này không tĩnh tại mà phản ứng, thay đổi theo ý muốn của người sử dụng (nhờ hành động, lời nói) Một đặc tính chính của thực tại ảo là tương tác theo thời gian thực (Real Time Interactivity), nghĩa là hệ thống có khả năng nhận biết tín hiệu vào của người sử dụng và thay đổi ngay lập tức thế giới ảo Người sử dụng nhìn thấy sự vật thay đổi theo ý muốn của họ và bị thu hút
Trang 10Đặc tính chính thứ hai của VR là tạo cảm giác đắm chìm (Immersion) Người sử dụng cảm thấy mình là một phần của thế giới ảo, hòa lẫn vào thế giới
đó VR còn đẩy cảm giác này "thật" hơn nữa nhờ tác động lên các kênh cảm giác khác Người dùng không những nhìn thấy đối tượng đồ họa 3D, điều khiển (xoay, di chuyển ) được đối tượng như trong game, mà còn sờ và cảm thấy chúng như có thật Các nhà nghiên cứu cũng đang tìm cách tạo những cảm giác khác như ngửi (khứu giác), nếm (vị giác) trong thế giới ảo
Năm 2005, công ty Sony cho biết họ đang nghiên cứu việc sử dụng sóng siêu âm ở những tần số khác nhau tác động vào não người để tạo ra cảm giác thật về mùi và vị Nếu có thêm công nghệ này, thực tại ảo sẽ cực kỳ sống động
và chúng ta có thể trải nghiệm những chuyện li kỳ như trong phim "Ma trận" (Matrix) của anh em nhà Wachowski Để thật sự cảm nhận thực tại ảo, chỉ màn hình máy tính không đủ mà cần cả một hệ thống trình chiếu, các thiết bị cảm ứng, mũ và kính đặc dụng
VR có tiềm năng ứng dụng rất lớn Giới quân sự sử dụng công nghệ VR để
mô phỏng chiến địa, tạo các thiết bị và môi trường ảo giúp tập bắn, tập lái xe tăng, lái máy bay Với một máy tính cài phần mềm xem thực tại ảo, các kiến trúc sư có thể giúp khách hàng của mình nhìn ngắm bên ngoài, xem xét bên trong ngôi nhà mà họ sắp xây Khách hàng còn có thể tải thử các loại đồ nội thất ảo từ server của một nhà cung cấp về bố trí trong nhà ảo xem có ưng ý hay không Các bác sĩ có thể thử nghiệm phẫu thuật trên những bệnh nhân
mô phỏng, vừa nâng cao tay nghề, vừa giảm nguy hiểm cho người bệnh Các công ty du lịch có thể cho khách xem trước khách sạn và một phần quang cảnh địa phương nơi khách sắp đến du lịch
Thời gian gần đây, VR đã được ứng dụng nhiều trong sản xuất, chế tạo robot, hiển thị thông tin (thăm dò dầu mỏ, dự báo thời tiết), giáo dục, thương mại, bất kỳ lĩnh vực nào Những ứng dụng đó phụ thuộc rất nhiều vào khả năng tưởng tượng của con người Trí tưởng tượng (Imagination), được coi là một đặc tính của VR
Trang 11Ấn tượng nhất có lẽ là ứng dụng VR trong giải trí Tại Nhật Bản, người ta
đã xây dựng những "phòng trượt tuyết ảo" Tới đó, người chơi không chỉ được trượt tuyết thỏa thích mà còn tha hồ lựa chọn những bãi tuyết đẹp trên thế giới Nếu bạn muốn thử nhảy dù từ một độ cao thật đáng sợ, VR sẽ giúp bạn trải nghiệm cảm giác đó VR cũng có thể đặt chúng ta vào những môi trường giả tưởng, hoàn toàn khác thế giới thực nhưng lại rất thực theo cảm nhận của các giác quan Theo hướng này, sự ly kỳ của những game nhập vai trong thực tại ảo
có lẽ chỉ còn phụ thuộc vào biên độ của trí tưởng tượng
Tại TP.Hồ Chí Minh, công viên văn hóa Đầm Sen – nơi đầu tiên đưa công nghệ thực tại ảo vào khai thác cho nhu cầu giải trí - đã thu hút lượng lớn khách vào tham quan; không chỉ có trẻ em mà ngay những người lớn cũng thích nhìn thế giới của loài khủng long xưa trong thế giới ảo mà như thực
Có vẻ như công nghệ không chỉ góp phần làm thế giới "phẳng" ra, mà còn đang phá vỡ những mảng tường chắn giữa thế giới thực và thế giới tưởng tượng Mặc dù trong thời điểm hiện tại, chi phí để phát triển và đưa thiết bị, dịch vụ VR đến người dùng còn cao, nhưng tiềm năng ứng dụng của nó thật khó có thể bỏ qua
Theo cách truyền thống, việc tương tác với máy tính được thực hiện thông qua các thiết bị như bàn phím, chuột hay joystick/trackball để cung cấp thông tin đầu vào và sử dụng khối hiển thị trực quan (VDU) để nhận thông tin đầu ra từ hệ thống Với sự ra đời của các hệ thống Thực tại ảo (Virtual Reality-VR), các phương thức giao tiếp mới được phát triển cho phép người sử dụng tương tác một cách tích cực với máy tính
Thực tại ảo là công nghệ sử dụng các kỹ thuật mô hình hoá không gian
ba chiều với sự hỗ trợ của các thiết bị đa phương tiện hiện đại để xây dựng
một thế giới mô phỏng bằng máy tính – môi trường ảo (virtual environment)
Trong thế giới ảo này, người sử dụng không còn được xem như người quan sát bên ngoài, mà đã thực sự trở thành một phần của hệ thống Một cách lý tưởng,
Trang 12người sử dụng có thể tự do chuyển động trong không gian ba chiều, tương tác với các vật thể ảo, quan sát và khảo cứu thế giới ảo ở những góc độ khác nhau
về mặt không gian Ngược lại, môi trường ảo lại có những phản ứng tương ứng với mỗi hành động của người sử dụng, tác động vào các giác quan như thị giác, thính giác, xúc giác của người sử dụng trong thời gian thực và tuân theo những quy tắc vật lý rất tự nhiên, làm anh ta có cảm giác như đang tồn tại trong một thế giới thực
1.1.2 Sơ lƣợc lịch sử phát triển
Mặc dù Thực tại ảo được mô tả như một công nghệ mới mang tính cách mạng, nhưng ý tưởng về việc nhúng người sử dụng vào một môi trường nhân tạo không còn mới Thực tại ảo có thể được xem như một sự mở rộng của những ý tưởng đã ra đời khá lâu như hệ thống mô phỏng bay (flight simulation), rạp chiếu phim màn ảnh rộng (như Cinerama hay IMAX) Sử dụng các hệ thống như vậy, người dùng được quan sát hình ảnh trong một màn hình có trường nhìn rộng lớn cho họ cảm giác như đang tồn tại trong trường không gian đó
Sự ra đời của các máy điện toán mini và bài báo khoa học của
Ivan Sutherland có tên “Màn hình tối tân” (Ultimate Display) vào năm 1965
được xem là hai bước đột phá lớn vào những năm 1960 cho công nghệ Thực tại ảo Trong bài báo của mình, Sutherland đã tiên đoán sự phát triển của
Thiết bị Hiển thị đội đầu (Head Mounted Display-HMD) đầu tiên, mà sau đó
chính ông đã tạo ra một thiết bị như vậy, có tên là “Thanh kiếm của Damocles”
(The Sword of Damocles) Sutherland cũng nhận ra tiềm năng của máy điện toán trong việc tạo lập hình ảnh cho hệ thống mô phỏng bay, trong khi những hình ảnh này trước đó được xây dựng bằng video camera
Những ý tưởng này được hai nhà khoa học Mỹ ở NASA là Fisher và
McGreevy kết hợp lại trong một dự án có tên là “trạm làm việc ảo”
(visual workstation) vào năm 1984 Cũng từ đó NASA phát triển
thiết bị Hiển thị đội đầu có tính thương mại đầu tiên, được gọi là
Trang 13màn hình môi trường trực quan (visual environment display - VIVED), thiết kế
dựa trên mẫu hình mặt nạ lặn với các màn hình quang học mà hình ảnh được cung cấp bởi hai thiết bị truyền hình cầm tay Sony Watchman Sự phát triển của thiết bị này đã thành công ngoài dự đoán, bởi NASA đã sản xuất được một thiết bị HMD có giá chấp nhận được trên thị trường, và như vậy ngành công nghiệp Thực tại ảo đã ra đời
1.1.3 Các ứng dụng cơ bản của Thực tại ảo
Mặc dù khái niệm về Thực tại ảo đã xuất hiện từ khá lâu, nhưng do nhiều
lý do về mặt công nghệ (kéo theo chi phí cho nghiên cứu và phát triển), phải mất nhiều thời gian và nỗ lực để Thực tại ảo có được những thành tựu như ngày nay Hiện tại đây vẫn là lĩnh vực công nghệ nhiều tiềm năng xét về khía cạnh ứng dụng Dưới đây là những lĩnh vực ứng dụng chính có khuynh hướng phát triển mạnh mẽ nhất trong thời gian gần đây
1.1.3.1 Kiến trúc và thiết kế thiết bị công nghệ
Một trong những lĩnh vực ứng dụng tiêu biểu nhất của Thực tại ảo là thiết kế kiến trúc Khả năng mô hình hoá thế giới thực của công nghệ Thực tại ảo dường như đáp ứng một cách tự nhiên mục tiêu của ngành thiết kế kiến trúc: Đưa ra mô hình trực quan nhất có thể về hình ảnh công trình kiến trúc mong muốn trong tương lai
1.1 Ứng dụng thực tại ảo trong thiết kế kiến trúc
Trang 14Việc xây dựng các mô hình không gian kiến trúc bằng hình ảnh lập thể với đầy đủ mô tả trực quan về các hình khối kiến trúc của một căn nhà, cách bố trí nội thất bên trong, thậm chí hoa văn cửa sổ hay màu sơn của tường, cùng với khả năng cho phép khách hàng tự do tham quan, khảo sát căn nhà của họ trong tương lai theo nhiều góc độ và vị trí, từ phòng này sang phòng khác thực sự đem lại hiệu quả trực quan mang tính cách mạng trong lĩnh vực mang nhiều đặc điểm nghệ thuật này
Tương tự như trong kiến trúc, với các ngành sản xuất thiết bị mà trong đó công đoạn thiết kế đóng vai trò quan trọng như thiết kế động cơ, thiết kế ô tô, tàu biển, hay thậm chí tàu vũ trụ, hình dạng và cách bố trí các chi tiết không chỉ đơn thuần mang tính thẩm mỹ, tính kỹ thuật mà đôi khi còn ảnh hưởng tới sức sống của thiết bị xét về khía cạnh thương mại Khả năng mô hình hoá bằng hình ảnh lập thể của công nghệ Thực tại ảo cho phép người thiết kế thể hiện được một cách trực quan nhất ý tưởng thiết kế của mình, đánh giá cơ bản về hiệu năng của thiết bị dựa trên những thử nghiệm mô phỏng trên thiết bị ảo, từ
đó có những hiệu chỉnh cần thiết trước khi thiết bị thực sự được sản xuất Điều này rõ ràng góp phần không nhỏ trong thành công của thiết bị công nghệ,
giảm bớt những chi phí phát sinh
1.2 Ứng dụng công nghệ Thực tại ảo trong thiết kế thiết bị công nghệ
Trang 151.1.3.2 Giải trí
Thị trường giải trí cũng là một ứng dụng tiêu biểu khác của các môi trường Thực tại ảo Trên thực tế, đây là lĩnh vực ứng dụng lớn nhất xét theo khía cạnh lợi ích về tài chính Rất nhiều công ty đang sản xuất ra các trò chơi có sử dụng các nguyên lý Thực tại ảo Số lượng người bị cuốn hút theo các trò chơi như vậy, đặc biệt là giới trẻ, tăng theo cấp số nhân đánh dấu tiềm năng thương mại
to lớn của công nghệ Thực tại ảo trong lĩnh vực này
1.3 Ứng dụng thực tại ảo trong lĩnh vực giải trí
Hơn thế, ngành công nghiệp trò chơi điện tử có những ảnh hưởng to lớn tới lĩnh vực Thực tại ảo Nó tạo ra động lực cần thiết để thúc đẩy sự phát triển của
rất nhiều phần cứng Thực tại ảo, chẳng hạn như card tăng tốc đồ hoạ
(graphic accelerator cards) Nếu như chúng ta trở lại khoảng 10 năm về trước, thật khó có thể tìm thấy một card tăng tốc đồ hoạ có đủ năng lực tính toán cần thiết cho phép tạo ra các ứng dụng Thực tại ảo thời gian thực Tại thời điểm
đó, những chiếc card như vậy trị giá hàng ngàn đô-la và chỉ đủ khả năng sinh 100.000 đa giác/giây ở mức độ phân giải trung bình Những thiết bị
phần cứng khác như Găng tay dữ liệu (DataGloves) và Thiết bị hiển thị đội đầu
(Head Mounted Displays-HMD) cũng chịu ảnh hưởng phần nào của công nghiệp giải trí Tóm lại, chúng ta có thể nói rằng các ứng dụng Thực tại ảo
Trang 16trong giải trí đã và đang đóng một vai trò quan trọng trong việc định hướng đi cho công nghiệp Thực tại ảo
1.1.3.3 Giáo dục và Đào tạo
Phát triển trên nền công nghệ và kỹ thuật cao, Thực tại ảo tích hợp những đặc tính làm cho bản thân nó có những tiềm năng vượt trội so với các công nghệ đa phương tiện truyền thống khác, cho người sử dụng cảm nhận
sự hiện diện của mình trong môi trường do máy tính tạo ra bằng khả năng tương tác, tự trị (autonomy) của người dùng trong môi trường ảo, cũng như bằng những phản hồi tức thời, trực quan từ phía môi trường ảo tới các giác quan của người sử dụng Hơn thế nữa, công nghệ Thực tại ảo cho phép mô phỏng những môi trường nguy hiểm hay tốn kém như buồng lái máy bay, phòng thí nghiệm hoá chất v.v
1.4 Mô hình huấn luyện bay sử dụng công nghệ Thực tại ảo
Tất cả những đặc tính này khiến công nghệ Thực tại ảo trở nên rất phù hợp cho các ứng dụng có tính chất giáo dục hay đào tạo Trong đó, những mô hình trình diễn lập thể đóng vai trò quan trọng Các vật thể trong thế giới ảo được biểu diễn chính xác hơn nhiều so với các đối tượng phẳng (hình ảnh hai chiều)
do được bổ sung thêm chiều sâu Kết quả là các trình diễn minh hoạ hay những thí nghiệm cũng được mô phỏng chính xác hơn do có thể quan sát từ nhiều góc
Trang 17độ khác nhau về mặt không gian, điều mà thế giới phẳng hai chiều không làm được
Tính chất trực quan của bài giảng được nâng cao một bước làm tăng
sự hứng thú trong học tập cũng như khả năng ghi nhớ các khái niệm quan trọng trong bài giảng Xét về mặt này, khả năng tương tác với môi trường ảo là một khía cạnh đáng lưu ý Nếu thiếu đi khả năng tương tác (hai chiều) giữa môi trường ảo và người tham dự, Thực tại ảo không gì khác hơn là một giao diện lập thể ấn tượng nhưng không có sự sống Trong các phòng thí nghiệm hay huấn luyện ảo, thực hiện các thao tác trên các đối tượng trong môi trường ảo, nhận được những phản hồi kịp thời và có nghĩa từ các vật thể và môi trường là một trong những yếu tố tiên quyết khiến cho học viên
có cảm nhận đang được trải nghiệm trong những tình huống thực Từ đó, học viên nắm bắt được nhanh chóng và có ý thức hơn với những tính huống được học
1.1.3.4 Y học
Y học là một trong những lĩnh vực ứng dụng tiềm năng trong công nghệ Thực tại ảo và là một trong số ít lĩnh vực ứng dụng thuộc ngành khoa học của Thực tại ảo Cho đến nay, lĩnh vực nổi bật trong y học áp dụng thành công
công nghệ Thực tại ảo là giả lập giải phẫu (Surgical Simulation)
Trên cơ sở các kỹ thuật đồ hoạ máy tính và Thực tại ảo, hệ thống đào tạo
y học này bao gồm hai bộ phận cơ bản: Khối tương tác ba chiều là mô hình sinh thể ảo cho phép người sử dụng thực hiện các thao tác giải phẫu thông qua các dụng cụ giải phẫu ảo; Khối giao diện người dùng hai chiều cung cấp những thông tin phản hồi trực quan từ mô hình trong quá trình giải phẫu cũng như những thông tin hướng dẫn trong phiên đào tạo
Trang 181.5 Phẫu thuật ảo – Phương pháp đào tạo phẫu thuật mới dùng công nghệ Thực tại ảo
Phương pháp đào tạo có tính tương tác cao này mang nhiều ưu điểm so với các phương pháp truyền thống như thực hành trên mô hình plastic hay trên bệnh nhân thực Thứ nhất, khác với phương pháp dùng mô hình plastic, sinh thể giải phẫu ảo có khả năng cung cấp những thông tin phản hồi sinh học một cách
tự nhiên như một sinh thể sống thực, dưới tác động giải phẫu của bác sỹ mổ, chẳng hạn như sự thay đổi về nhịp tim, huyết áp,… Điều này tạo cho học viên
có cảm giác đang trải qua một ca mổ trong một tình huống thực Thứ hai, khác với thực hành trên bệnh nhân thật, rõ ràng sai lầm của học viên trong quá trình thực tập không phải trả giá bằng những thương tổn thực trên cơ thể người bệnh Điều này cũng làm giảm áp lực lên học viên khi thực hiện phẫu thuật ảo Từ đó, giúp họ tự tin và chủ động hơn trong học tập
Phương pháp này không chỉ cho phép các học viên y khoa thực hành các
ca phẫu thuật trong tình huống thực, đem lại cho họ những kinh nghiệm cần thiết trước khi thực hiện phẫu thuật trên cơ thể con người, đây còn là cơ hội
để các bác sỹ mổ nâng cao kỹ thuật giải phẫu và kỹ năng phối hợp làm việc theo nhóm trong phòng mổ Điều này đặc biệt quan trọng trong các tình huống phẫu thuật nguy hiểm và nhạy cảm
Các kỹ thuật Thực tại ảo cũng được sử dụng để hỗ trợ bác sỹ mổ trong giai đoạn lập kế hoạch tiền phẫu thuật (preoperative planning) Trước khi
Trang 19thực hiện quy trình giải phẫu trên bệnh nhân thực, người bác sỹ có thể thử nghiệm các phương pháp tiến hành phẫu thuật khác nhau trên mô hình ảo của người bệnh Mô hình này mô phỏng đầy đủ các đặc điểm bệnh lý của người bệnh thật Theo cách này, người bác sỹ sẽ lựa chọn ra được cách thức
an toàn nhất, hiệu quả nhất và tốn ít thời gian nhất trong phòng phẫu thuật, hạn chế những biến cố trong quá trình giải phẫu
1.2 Biểu diễn mô hình 3D
1.2.1 Sơ lƣợc về quy trình hiển thị
Quy trình xử lí thông tin trong đồ họa ba chiều là một chuỗi các bước nối tiếp nhau, kết quả của mỗi bước sẽ là đầu vào của bước tiếp theo
1.6 Quy trình hiển thị đối tƣợng ba chiều
Quy trình bắt đầu bằng việc xây dựng các mô hình đối tượng Các mô hình này thường được mô tả trong không gian ba chiều (x,y,z) Các mô hình thường thể hiện vật thể (solid) hoặc bề mặt (boundaries) của đối tượng Như vậy ta có
hai kiểu mô hình hóa Trong solid modeling các đối tượng đồ họa cơ sở thường
Trang 20được dùng để mô tả các đối tượng có thể tích (volume) Trong boundary
representations(B-reps), các đối tượng được định nghĩa bởi bề mặt của chúng
Các mô hình thường được biểu diễn trong một hệ tọa độ cục bộ, mà ta gọi
là hệ tọa độ đối tượng Trong hệ tọa độ này chỉ có bản thân đối tượng được định nghĩa, vì vậy gốc tọa độ và đơn vị đo lường thường được chọn sao cho việc biểu diễn đối tượng tiện lợi nhất
Bước đầu tiên trong quy trình hiển thị là biến đổi đối tượng từ không gian
đối tượng (object-space) vào một không gian chung gọi là không gian thực (world space) Trong không gian này các đối tượng, nguồn sáng, và người quan sát cùng tồn tại Bước này được gọi là giai đoạn biến đổi mô hình
(modeling transformation)
Bước tiếp theo là một bước tối ưu hóa Trong giai đoạn loại bỏ đơn giản (trivial rejection) ta cần loại trừ tất cả các đối tượng không thể nhìn thấy Điều này giúp chúng ta tránh được việc xử lí một số phần không cần thiết của cảnh (scene) mà ta đang chuẩn bị hiển thị ở các bước sau
Tiếp theo ta phải chiếu sáng (illumination) các đối tượng có thể nhìn thấy được bằng cách gán cho chúng màu sắc dựa trên các đặc tính của các chất tạo nên vật và các nguồn sáng tồn tại trong cảnh
Sau khi chiếu sáng, ta phải thực hiện một phép biến đổi hệ tọa độ để đặt vị trí quan sát (viewing position) về gốc tọa độ và mặt phẳng quan sát (viewing plane) về một vị trí mong ước Bước này gọi là bước đổi hệ quan sát Sau bước này, các đối tượng được chuyển từ không gian thực sang
không gian quan sát (eye space)
Trong không gian quan sát, ta phải thực hiện việc xén các đối tượng trong
cảnh để cảnh nằm gọn trong một phần không gian chóp cụt mà ta gọi là viewing frustum Bước này sẽ loại bỏ hoàn toàn các đối tượng (các mảnh đối tượng)
không nhìn thấy được trong ảnh
Trang 21Bước tiếp theo ta sẽ chiếu các đối tượng xuống mặt phẳng hai chiều Bước Projection thực hiện phép biến đổi từ không gian quan sát sang
không gian màn hình (screen-space)
Trong bước rời rạc hóa (rasterization) ta sẽ chuyển đối tượng thành các pixel Cuối cùng, toàn cảnh sẽ được hiển thị lên màn hình
1.2.2 Mô hình khung nối kết (Wireframe Model)
1.2.2.1 Khái niệm
Một phương pháp thông dụng và đơn giản để mô hình hóa đối tượng là
mô hình khung nối kết
Một mô hình khung nối kết gồm có một tập các đỉnh và tập các cạnh nối giữa các đỉnh đó Khi thể hiện bằng mô hình này, các đối tượng ba chiều có vẻ rỗng và không giống thực tế lắm Để hoàn thiện hơn, người ta dùng các kĩ thuật tạo bóng và loại bỏ các đường và mặt khuất (Chúng ta sẽ đề cập vấn đề này ở các chương sau) Tuy nhiên vẽ bằng mô hình này thường nhanh nên người ta thường dùng nó trong việc xem phác thảo (preview) các đối tượng, đặc biệt là trong các hệ CAD
1.2.2.2 Biểu diễn các vật thể ba chiều bằng mô hình khung nối kết
Với mô hình khung nối kết, hình dạng của đối tượng ba chiều được biểu diễn bằng hai danh sách (list) : danh sách các đỉnh (vertices) và danh sách các cạnh (edges) nối các đỉnh đó Danh sách các đỉnh cho biết thông tin hình học đó
là vị trí các đỉnh, còn danh sách các cạnh xác định thông tin về sự kết nối, nó cho biết cặp các đỉnh tạo ra cạnh
Bảng danh sách các cạnh và đỉnh biểu diễn vật thể
Vertex List Edge List Vertex x y z Edge Vertex1 Vertex2
Trang 23Có nhiều cách để đặc tả mô hình khung nối kết trên máy tính như dùng
xâu, mảng, và mỗi cách đều có các ưu điểm riêng trong từng ứng dụng cụ thể
Ngoài ra, đôi khi trong mô hình wireframe người ta còn mô tả các mặt (phẳng) của đối tượng Mỗi mặt được định nghĩa bởi một đa giác bao
1.2.2.3 Vẽ các đối tượng theo mô hình khung nối kết bằng cách sử dụng các phép chiếu
Để vẽ các đối tượng biểu diễn bằng mô hình khung nối kết, đơn giản chúng
ta chỉ cần vẽ các cạnh trong danh sách các cạnh mà thôi Tuy nhiên do các đỉnh
và cạnh đều được định nghĩa trong ba chiều nên vấn đề đặt ra ở đây là làm thế nào để vẽ các đường thẳng ba chiều trong mặt phẳng hai chiều Để làm điều này, chúng ta phải thực hiện phép chiếu từ ba chiều vào hai chiều để bỏ bớt một chiều Có hai loại phép chiếu đơn giản thường dùng đó là phép chiếu song song (parallel projection) và phép chiếu phối cảnh (perspective projection) Phép chiếu song song sử dụng các đường thẳng song song đi qua các đỉnh của đối tượng, trong khi đó phép chiếu phối cảnh dùng các đường thẳng qua các đỉnh của đối tượng hội tụ về một điểm gọi là tâm chiếu (center of projection) Các đường thẳng trên được gọi là tia chiếu và giao điểm của các đường thẳng này với mặt phẳng chiếu (hay còn gọi là mặt phẳng quan sát (view plane)) chính là các hình chiếu của các đỉnh hay còn gọi là điểm chiếu Trong phần này, chúng ta giả sử rằng mặt phẳng chiếu là mặt phẳng z=0
Phép chiếu song song bảo toàn được mối quan hệ giữa các chiều của đối tượng, đây chính là kĩ thuật được dùng trong phác thảo để tạo ra phần khung của đối tượng ba chiều Người ta dùng phương pháp này để quan sát chính xác ở các mặt khác nhau của đối tượng Tuy nhiên, phép chiếu song song không cho một biểu diễn thực của đối tượng ba chiều
Trong khi đó, phép chiếu phối cảnh tạo ra được biểu diễn thực hơn nhưng lại không bảo toàn được mối liên hệ giữa các chiều Các đường thẳng càng xa sẽ
có các ảnh chiếu nhỏ hơn
Trang 24Nói chung, kĩ thuật để vẽ một đường thẳng ba chiều là :
+ Chiếu mỗi điểm đầu mút thành các điểm hai chiều
+ Vẽ đường thẳng nối hai điểm ảnh qua phép chiếu
1.8 Phép chiếu song song (a) và phép chiếu phối cảnh (b)
Sở dĩ chúng ta làm được điều này vì các phép chiếu mà chúng ta sử dụng bảo toàn đường thẳng
Phép chiếu song song (parallel projection)
Khi hướng của tia chiếu vuông góc với mặt phẳng chiếu ta có phép chiếu trực giao (orthographic projection) Ngược lại, ta có phép chiếu xiên (oblique projection)
Phép chiếu trực giao
Xét điểm ba chiều, P (P x,P y,P z), cách đơn giản nhất là bỏ đi thành phần z
để chiếu P thành P' (P x,P y) Điều này tương đương với chiếu điểm đó lên mặt phẳng xy theo phương của trục z Mặt phẳng xy là mặt phẳng quan sát Xem hình vẽ minh họa 1.9, ở đây điểm chiếu chính là giao điểm của tia a qua P và song song với trục z vuông góc với mặt phẳng xy Tia a là tia chiếu
Dễ dàng thấy rằng phép chiếu này bảo toàn đường thẳng
Trang 251.9 Phép chiếu trực giao
Phép chiếu trực giao ở trên thường được gọi là phép nhìn từ trên xuống (top-view) hoặc dưới lên (bottom-view) Có hai phép chiếu khác cũng khá thông dụng là:
Phép nhìn từ phía trước (front-view): Tia chiếu song song với trục x và mặt phẳng quan sát là yz Phép chiếu này loại bỏ thành phần x của P
Phép nhìn từ phía bên cạnh (side-view): Tia chiếu song song với trục y và mặt phẳng quan sát là xz Phép chiếu này loại bỏ thành phần y của P
Hình 1.9 minh họa ba phép chiếu trực giao đã đề cập ở trên lên một vật thể
là ngôi nhà Nhận xét rằng với phép chiếu nhìn từ phía trước ta không phân biệt được tường trước và tường sau vì chúng nằm chồng lên nhau, cũng tương tự cho trường hợp phép chiếu nhìn từ phía bên cạnh
Trang 261.10 Kết quả của ba phép chiếu trực giao
Phép chiếu xiên
1.11 Phép chiếu xiên
Hình 1.11 minh họa một phép chiếu xiên Điểm P (P x,P y,P z)qua phép chiếu xiên sẽ nhận được điểm P' (x p,y p) (P x,P y) là hình chiếu của P qua phép chiếu trực giao a là góc hợp bởi tia chiếu và đoạn nối (x p,y p)và (P x,P y) Giả sử đoạn nối này có độ dài là L f là góc giữa đoạn nối trên với trục y
Phép chiếu phối cảnh (perspective projection)
Phép chiếu phối cảnh đơn giản nhất
Phép chiếu phối cảnh phụ thuộc vào vị trí tương đối của hai đối tượng đó là mắt nhìn và mặt phẳng quan sát
Trang 27Quan sát hình sau, với mặt phẳng quan sát là yz và mắt nhìn E (E, 0 , 0 ) được đặt dọc theo trục x Khoảng cách giữa mắt E và mặt phẳng quan sát được gọi là tầm nhìn (eye distance).Để xác định hình chiếu của P(x,y,z), ta nối P với E và tìm giao điểm P’ của đường thẳng này với mặt phẳng quan sát Lúc này P’ chính
là điểm cần tìm
1.12 Phép chiếu phối cảnh đơn giản
Trong phép chiếu phối cảnh các tia chiếu không song song với nhau mà hội
tụ về một điểm duy nhất là mắt
Chúng ta giả sử P không nằm phía sau mắt nhìn, tức là x E P có thể nằm sau mặt phẳng quan sát, hay trên mặt phẳng quan sát, hay giữa mắt và mặt phẳng quan sát Ta có, tia từ mắt đến P có dạng :
t z y x t E
(
1
'
E x t
Suy ra các tọa độ của điểm chiếu là :
Trang 28) 1
(
'
E x
y
y
) 1
(
'
E x
z
z
Phép chiếu phối cảnh gần giống phép chiếu trực giao chỉ khác là hai tọa độ
y, z được nhân lên thêm một lượng là
) 1 (
1 '
E x
t Hệ số tỉ lệ này dẫn đến khái
niệm phối cảnh theo luật xa gần (perspective foreshortening) nghĩa là : vật càng
xa mắt (theo chiều âm của trục x, để luôn có x E) thì t’ càng nhỏ dẫn đến y’, z’ càng nhỏ do đó vật sẽ thấy nhỏ hơn, ngược lại nếu vật càng gần mắt thì sẽ thấy lớn hơn
Cũng tương tự như trên, ta có thể dễ dàng kiểm chứng phép chiếu phối cảnh cũng bảo toàn đường thẳng
Nhận xét rằng phép chiếu song song là một trường hợp đặc biệt của phép chiếu phối cảnh Nếu chúng ta cho tầm nhìn E càng ngày càng lớn tiến dần đến
vô cực thì các tia chiếu qua mắt sẽ trở nên song song và hệ số
) 1 (
1 '
E x
Trang 29) 1
(
1
'
E z t
) 1
(
'
E z
x
x
) 1
(
'
E z
y
y
1.2.3 Biểu diễn đối tƣợng ba chiều
Các cảnh đồ họa có thể chứa nhiều dạng đối tượng khác nhau: cây, hoa, mây, núi, nước, sắt thép, cỏ, …Chính vì vậy, không ngạc nhiên khi có nhiều phương pháp khác nhau có thể sử dụng để mô tả các đối tượng sao cho phù hợp với thuộc tính của các loại đối tượng này Các mặt đa giác và mặt bậc hai cung cấp cho chúng ta một mô tả gần đúng của các đối tượng Euclid đơn giản như là các khối ellipse, khối đa diện; các mặt tròn xoay, và các đối tượng dùng để thiết
kế các mô hình máy bay, bánh răng và các cấu trúc công nghệ khác thường được biểu diễn thông qua mặt cong (curves); các phương pháp tiếp cận thủ tục (procedural method) như Fractal cho phép chúng ta biểu biễn một cách chính xác các đối tượng như mây, thảm cỏ và các đối tượng tự nhiên khác
Sơ đồ biểu diễn một đối tượng lập thể thường được chia ra làm hai loại, dù không phải tất cả các biểu diễn đều có thể được phân chia một cách rõ ràng thuộc loại nào trong hai loại này Phương pháp biểu diễn bề mặt ((B-reps)) mô tả các đối tượng ba chiều bằng một tập hợp các bề mặt giới hạn phần bên trong của đối tượng với môi trường bên ngoài Ví dụ kinh điển của B-reps là việc biểu diễn các mặt đa giác và các mảnh tròn xoay Phương pháp biểu diễn theo phân hoạch không gian (space-partitioning representation) thường được dùng để mô
tả các thuộc tính bên trong của đối tượng bằng cách phân hoạch phần bên trong của đối tượng thành một tập hợp nhiều đối tượng nhỏ hơn
Trang 30Trong đồ họa máy tính, các đối tượng lập thể có thể được mô tả bằng các
bề mặt (surfaces) của chúng Ví dụ : Một hình lập phương được xây dựng từ sáu mặt phẳng, một hình trụ được xây dựng từ sự kết hợp của một mặt cong và hai mặt phẳng, và hình cầu được xây dựng chỉ từ một mặt cong Thông thường để biểu diễn một đối tượng bất kì , người ta dùng các phương pháp xấp xỉ để đưa các mặt về dạng các mặt đa giác (polygon faces) Tuy nhiên trong trường hợp các đối tượng thực sự phức tạp, người ta thường dùng một hay nhiều mặt cong trơn (smoothly curved surfaces) ghép nối lại với nhau Mỗi thành phần dùng để ghép nối được gọi là patch (mặt vá)
1.2.3.1 Biểu diễn mặt đa giác
Phương pháp B-reps chung nhất thường dùng để biểu diễn các đối tượng ba chiều là dùng một tập hợp các mặt đa giác xác định bề mặt của đối tượng Rất nhiều hệ thống đồ họa lưu trữ các đối tượng như là một tập hợp các mặt đa giác Với cách biểu diễn này ta có thể đơn giản hóa việc biểu diễn và tăng tốc độ hiển thị các đối tượng bởi vì tất cả các bề mặt đều được mô tả bởi các phương trình tuyến tính Vì lí do này, mô tả các đối tượng thông qua các mặt đa giác thường được dùng cho các đối tượng đồ họa cơ sở
Trong một số trường hợp, ta chỉ có một khả năng chọn lựa là sử dụng biểu diễn đa giác Tuy nhiên, một số hệ thống đồ họa còn cho phép các khả năng biểu diễn khác ví dụ như bằng các mặt cong spline
1.13 Mô hình wireframe của một hình trụ
Trang 31Biểu diễn bằng mặt đa giác của các đa diện cho chúng ta một định nghĩa chính xác về các đặc tính của các đối tượng này Nhưng đối với những đối tượng khác ta chỉ nhận được một biểu diễn gần đúng Hình 1.13 cho chúng ta biểu diễn một hình trụ như là một tập hợp các mặt đa giác Biểu diễn dạng wireframe cho phép chúng ta hiển thị đối tượng rất nhanh Khi cần thể hiện đối tượng thực hơn,
ta có thể dùng kĩ thuật tạo bóng nội suy (interpolating shading)
Biểu diễn bằng bảng đa giác
Ta biểu diễn một mặt đa giác bằng một tập hợp các đỉnh và các thuộc tính kèm theo Khi thông tin của mỗi mặt đa giác được nhập, dữ liệu sẽ được điền vào trong các bảng sẽ được dùng cho các xử lí tiếp theo, hiển thị và biến đổi Các bảng dữ liệu mô tả mặt đa giác có thể tổ chức thành hai nhóm: các bảng hình học và các bảng thuộc tính Các bảng lưu trữ dữ liệu hình học chứa tọa độ của các đỉnh và các tham số cho biết về định hướng trong không gian của mặt đa giác Thông tin về thuộc tính của các đối tượng chứa các tham số mô tả độ trong suốt, tính phản xạ và các thuộc tính texture của đối tượng
Một cách tổ chức thuận tiện để lưu trữ các dữ liệu hình học là tạo ra ba danh sách: một bảng lưu đỉnh, một bảng lưu cạnh và một bảng lưu đa giác Các giá trị tọa độ cho mỗi đỉnh trong đối tượng được chứa trong bảng lưu đỉnh Bảng cạnh chứa các con trỏ trỏ đến bảng đỉnh cho biết đỉnh nào được nối với một cạnh của đa giác Và cuối cùng, bảng lưu đa giác chứa các con trỏ trỏ tới bảng lưu cạnh cho biết những cạnh nào tạo nên đa giác
Ngoài ra, ta cũng có thể thêm một số thông tin bổ sung vào các bảng trên
để xử lí nhanh hơn khi cần truy xuất thông tin Ví dụ, ta có thể thêm một con trỏ
từ một cạnh đến các đa giác chứa nó Tương tự, ta có thể thêm thông tin trong bảng lưu đỉnh để biết những cạnh nào kề với một đỉnh cho trước …
Vì các bảng lưu thông tin về đối tượng có thể rất phức tạp nên việc kiểm tra tính đúng đắn và đầy đủ của dữ liệu là rất quan trọng
Trang 32Phương trình biểu diễn mặt phẳng có dạng:
0
trong đó ( , , )x y z là một điểm bất kì của mặt phẳng và A, B, C, D là các hằng số diễn tả thông tin không gian của mặt phẳng Như đã biết, để xác định phương trình mặt phẳng, ta chỉ cần biết ba điểm không thẳng hàng trên mặt phẳng này Như vậy, để xác định phương trình mặt phẳng qua một đa giác, ta sẽ
sử dụng tọa độ của ba đỉnh đầu tiên ( ,x y1 1), (x y2 , 2 ), ( ,x y3 3 ) trong đa giác này