ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
PHẠM THỊ PHƯƠNG NGA
NGHIÊN CỨU KỸ THUẬT TẠO BÓNG BỀ MẶT
CỦA VẬT THỂ VÀ ỨNG DỤNG
Ngành: Khoa học máy tính.
Mã số: 8 48 01 01.
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
NGƯỜI HƯỚNG DẪN KHOA HỌC
TS. Vũ Đức Thái
Thái Nguyên năm 2020
i
LỜI CAM ĐOAN
Tên tôi là: Phạm Thị Phương Nga
Sinh ngày: 08/10/1979
Học viên lớp cao học CHK17A - Trường Đại học Công nghệ Thông
tin và Truyền thông - Đại học T
66 trang |
Chia sẻ: huong20 | Ngày: 13/01/2022 | Lượt xem: 336 | Lượt tải: 0
Tóm tắt tài liệu Luận văn Nghiên cứu kỹ thuật tạo bóng bề mặt của vật thể và ứng dụng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Thái Nguyên.
Hiện đang công tác tại: Trường THCS Quang Sơn - Đồng Hỷ - tỉnh
Thái Nguyên.
Xin cam đoan: Đề tài “ Nghiên cứu kỹ thuật tạo bóng bề mặt của vật thể
và ứng dụng”, do TS. Vũ Đức Thái hướng dẫn là công trình nghiên cứu
của riêng tôi. Tất cả tài liệu tham khảo đều có nguồn gốc, xuất xứ rõ ràng.
Tác giả xin cam đoan tất cả những nội dung trong luận văn đúng như
nội dung trong đề cương và yêu cầu của thầy giáo hướng dẫn. Nếu sai tôi
hoàn toàn chịu trách nhiệm trước hội đồng khoa học và trước pháp luật.
Thái Nguyên, ngày 17 tháng 09 năm 2020
Tác giả luận văn
Phạm Thị Phương Nga
ii
LỜI CẢM ƠN
Tôi xin chân thành cảm ơn TS. Vũ Đức Thái, là thầy giáo trực tiếp
hướng dẫn khoa học cho tôi trong quá trình thực hiện luận văn này.
Tôi xin chân thành cảm ơn các Thầy, Cô giáo, cán bộ trong trường
Đại học Công nghệ Thông tin và Truyền thông – Đại học Thái Nguyên cùng
các anh chị đồng nghiệp trong cơ quan đã tạo những điều kiện thuận lợi cho
tôi học tập và nghiên cứu hoàn thành chương trình học tập và thực hiện luận
văn tốt nghiệp
Tôi 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 Khoa học máy tính CK -17A, trường Đại học Công nghệ Thông tin
và Truyền thông – Đại học Thái Nguyên đã 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.
Cuối cùng, tôi muốn gửi lời cảm ơn tới gia đình, bạn bè, những người
thân luôn bên cạnh và động viên tôi trong suốt quá trình thực hiện luận văn
tốt nghiệp.
Mặc dù rất cố gắng, song luận văn này không thể tránh khỏi những
thiếu sót, kính mong được sự chỉ dẫn của các quý thầy cô và các bạn.
Thái Nguyên, ngày 17 tháng 9 năm 2020
Học viên
Phạm Thị Phương Nga
iii
MỤC LỤC
Lời cam đoan ................................................................................................. i
Lời cảm ơn .................................................................................................... ii
Mục lục ........................................................................................................ iii
Danh mục hình ảnh......................................................................................iv
MỞ ĐẦU ........................................................................................................ 1
1. Lý do chọn đề tài ........................................................................................ 1
2. Mục tiêu ...................................................................................................... 4
3. Đối tượng và phạm vi nghiên cứu của đề tài .............................................. 4
Chương 1. TỔNG QUAN VỀ MÔ PHỎNG VÀ BÀI TOÁN HIỂN THỊ
MÔ HÌNH BÓNG BỀ MẶT ......................................................................... 5
1.1. Tổng quan về thực tại ảo .......................................................................... 5
1.1.1.Thực tại ảo là gì ..................................................................................... 5
1.1.2. Lịch sử phát triển của thực tại ảo ...................................................................... 5
1.1.3 .Ứng dụng của thực tại ảo .................................................................................. 6
1.2. Mô hình 3D trong thực tại ảo ................................................................... 6
1.3. Vai trò của việc mô phỏng không gian 3D ............................................ 10
1.4. Mô hình hóa mô hình 3D ....................................................................... 11
1.4.1. Hệ trục tọa độ...................................................................................... 12
1.4.2. Kỹ thuật hiển thị mô hình Bump Mapping. ........................................ 13
1.4.3. Kỹ thuật xử lý ảnh hoa văn ................................................................. 19
1.4.4. Kỹ thuật Ánh xạ bề mặt chạm nổi. .................................................................. 20
1.4.5. Kỹ thuật sử dụng môi trường ánh xạ bump mapping ..................................... 20
Chương 2. MỘT SỐ KỸ THUẬT HIỂN THỊ BỀ MẶT CỦA VẬT THỂ
3D ................................................................................................................. 22
2.1. Kỹ thuật chiếu sáng ............................................................................... 22
2.2. Hiệu ứng ánh sáng ................................................................................. 24
2.2.1.Các hiệu ứng ánh sáng ..................................................................................... 24
2.3.Thuật toán chiếu sáng toàn cục ............................................................... 28
2.3.1.Một số thuật toán chiếu sáng toàn cục ............................................................. 28
2.4.Kỹ thuật chiếu sáng cục bộ ..................................................................... 32
Chương 3. MÔ PHỎNG TÁC ĐỘNG ÁNH SÁNG LÊN BỀ MẶT VẬT
THỂ .............................................................................................................. 44
3.1. Phân tích các yêu cầu hệ thống .............................................................. 44
3.2. Phân tích chi tiết .................................................................................... 45
3.2.1. Phân tích hình ảnh .............................................................................. 45
3.2.2. Phân tích chức năng người dùng ......................................................... 46
3.2.3.Phân tích các yêu cầu biểu diễn ........................................................... 47
3.3 . Thiết kế các thuật toán .......................................................................... 49
3.3.1.Thuật toán xác định hướng ánh sáng trong môi trường ....................... 49
3.3.2. Thuật toán tính toán tương tác giữa các vật thể khi xoay.................... 50
3.4. Thiết kế giao diện .................................................................................. 51
KẾT LUẬN.................................................................................................. 57
TÀI LIỆU THAM KHẢO .......................................................................... 58
PHỤ LỤC
iv
DANH MỤC HÌNH ẢNH
Hình 1.1. Một hình ảnh kết quả thực nghiệm ................................................. 10
Hình 1.2. Hệ trục tọa độ Trục ......................................................................... 12
Hình 1.3. Bề mặt đá tại nhà thờ đá Phát Diệm ................................................ 14
Hình 1.4. Cây đổ bóng .................................................................................... 15
Hình 1.5. Không gian tiếp tuyến ..................................................................... 17
Hình 1.6. Sự phản xạ của tia sáng trên bề mặt ............................................... 18
Hình 2.1. Nguyên tắc đặt đèn trong trưng bày ................................................ 23
Hình 2.2. Minh họa quá trình sinh và dò tia của ray tracing .......................... 29
Hình 2.3. Các bước xử lý trong giải thuật Ray tracing ................................... 30
Hình 2.4. So sánh giữa Scan line và ray tracing ............................................. 31
Hình 2.5. Chiếu sáng bằng photon mapping ................................................... 32
Hình 2.6. Các bước xử lý trong giải thuật Scan line. ...................................... 33
Hình 2.7. MAX cung cấp ba loại điều chỉnh điểm chốt ................................ 38
Hình 2.8. Use Selection Center (tâm của tập chọn) ....................................... 39
Hình 2.9. Transform Coordinate Center (tâm của hệ tọa độ phép biến đổi) .. 39
Hình 2.10. Trước khi Occlusion Culling. ....................................................... 40
Hình 2.11. Dung lượng phát triển bóng Culling. ........................................... 42
Hình 2.12. Một ảnh hoa văn phức tạp ............................................................. 43
Hình 3.1. Một số vật thể trưng bày ................................................................. 45
Hình 3.2. Bề mặt vật thể trong suốt ................................................................ 46
Hình 3.3. So sánh ảnh bị nhiễu sáng và đã chỉnh sửa ..................................... 46
Hình 3.4. Biểu đồ Use case ............................................................................. 47
Hình 3.5. Sơ đồ phân tích ............................................................................. 48
Hình 3.6. Mô hình thuật toán xác định hướng ánh sáng trong môi trường .... 49
Hình 3.7. Sơ đồ khối của phương pháp tích phân số hỗn hợp ........................ 51
Hình 3.8. Biểu diễn hiện vật Trống với hướng chiếu sáng từ trên xuống ...... 53
Hình 3.9. Biểu diễn hiện vật Bình với hướng chiếu sáng từ trên xuống ........ 54
Hình 4.0. Biểu diễn hiện vật Cồng với hướng chiếu sáng từ trên xuống ...... 55
Hình 4.1. Biểu diễn hiện vật Giỏ với hướng chiếu sáng từ trên xuống ......... 56
1
MỞ ĐẦU
1. Lý do chọn đề tài
Trưng bày ảo là một lĩnh vực đã và được ứng dụng trong giải quyết nhiều
vấn đề của đời sống thực tế. Trong bảo tàng, trưng bày ảo được ứng dụng để tạo
ra các phòng trưng bày ảo, qua đó khách tham quan có thể đến bảo tàng, xem và
hiểu biết thông tin về các hiện vật, v.v. của bảo tàng mà không cần đến tận nơi.
Trong thương mại, đặc biệt là thương mại điện tử, trưng bày ảo là nơi cho phép
các nhà sản xuất, nhà kinh doanh, v.v. giới thiệu quảng bá sản phẩm của mình
đến người tiêu dùng một cách đầy đủ và chính xác. Trong lĩnh vực văn hóa nghệ
thuật, trưng bày ảo chính là một công cụ hữu hiệu để các nghệ sỹ giới thiệu và
quảng bá sản phẩm tinh thần của mình đến với độc giả. Trong hầu hết các lĩnh
vực của thực tế chúng ta đều có thể tìm thấy một vấn đề có thể ứng dụng, sử
dụng trưng bày ảo như là một công cụ trực tiếp hoặc gián tiếp để giải quyết vấn
đề đó. Thời gian gần đây với sự phát triền mạnh mẽ của các công nghệ Thực tại
ảo, Thực tại ảo trộn, Thực tại tăng cường, đã tạo một khả năng phát triển mạnh
mẽ cho việc phát triển và ứng dụng của trưng bày ảo. Với sự hỗ trợ của các công
nghệ mới này, người ta có thể đưa những hiện vật ảo ra ngoài không gian thực
để người tham quan có thể xem thậm chí là tương tác và sử dụng hiện vật ảo đó
như thật. Qua đó, giải quyết được nhiều vấn đề như: thiếu hiện vật, bảo quản
hiện vật trong bảo tàng hoặc các vấn đề về kinh tế (chi phí làm sản phẩm mẫu)
trong thương mại.
Để xây dựng các ứng dụng thực tế sử dụng công nghệ trưng bày ảo có
rất nhiều vấn đề được đặt ra cần nghiên cứu và giả quyết ví dụ như: vấn đề về
xây dựng và tối ưu hóa mô hình để có thể sử dụng được, vấn đề về quản lý
thông tin bao gồm cả các thông tin về vị trí trưng bày của từng hiện vật, vấn
đề về tính toán va chạm gi ữa hiện vật ảo với môi trường thật, v.v.
Vấn đề quan trọng nhất trong các ứng dụng đồ họa ba chiều thời gian thực
nói chung và trong các ứng dụng trưng bày ảo nói riêng là tạo ra những hình ảnh
chân thật. Để có được những hình ảnh như vậy điều quan trọng là tính toán được
2
các tác động của môi trường lên biểu diễn bề mặt đối tượng. Các tác động của
môi trường lên bề mặt đối tượng có thể phân thành hai loại chính: một là các tác
động không làm thay đổi bản chất bề mặt của đối tượng mà chỉ làm thay đổi
hình ảnh từ người quan sát; hai là các tác động làm thay đổi kết cấu, tính chất,
đặc điểm bề mặt thậm chí là đặc điểm hình học của đối tượng.
Với loại thứ nhất, thể hiện các tác động làm thay đổi hình ảnh quan sát
của đối tượng. Việc tính toán các tác động này về bản chất, chính là quá trình
kết xuất ảnh hai chiều từ đối tượng, góc quan sát và các điều kiện môi trường,
toàn bộ quá trình này được gọi là (Rendering) [7, 22]. Trong Rendering ngoài
yếu tố nội tại của đối tượng, ánh sáng là yếu tố quan trọng và có ảnh hưởng
nhiều đến việc biểu diễn bề mặt đối tượng, đây là yếu tố mà mọi ứng dụng ba
chiều đều không thể bỏ qua. Việc tính toán ảnh hưởng của ánh sáng lên biểu
diễn bề mặt đối tượng được thể hiện thông qua hai hiệu ứng chính đó là hiệu
ứng bóng bề mặt (Shading) và hiệu ứng bóng đổ (Shadow).
Nghiên cứu về bóng bề mặt là các nghiên cứu cơ bản và quan trọng trong
đồ họa ba chiều thời gian thực. Có nhiều kỹ thuật tô bóng đã được đề xuất và
đang được sử dụng rộng rãi hiện nay có thể kể đến như kỹ thuật tô bóng
Gouraud [7] được đề xuất năm 1971 đây chính là kỹ thuật nền tảng cho mọi
kỹ thuật tiếp theo; kỹ thuật tô bóng Phong [12] và Phong Blinn [2] là hai kỹ
thuật được cài đặt và sử dụng rộng rãi nhất hiện nay.
Ngoài các kỹ thuật trên hiện nay các kỹ thuật sử dụng bản đồ phụ trợ
như Normal Mapping, Parallax Mapping, Displacement Mapping [5, 16, 18]
nhằm làm tăng độ chi tiết của bề mặt đối tượng nhưng không làm thay đổi số
lượng đa giác biểu diễn cũng đang được sử dụng rộng rãi.
Vấn đề tô bóng là vấn đề kinh điển và đã được nghiên cứu từ rất lâu tuy
nhiên do phải đáp ứng yêu cầu thời gian thực nên việc tô bóng cho các đối
tượng như như lông, tóc, khói, mây, các đối tượng lỏng, v.v. hoặc việc thể
hiện các hiệu ứng gương, khúc xạ, thấu kính, v.v. là những vấn đề khó và tiếp
tục được nghiên cứu. Các công trình nghiên cứu tiêu biểu có thể xem trong
các tài liệu tham khảo [9, 10, 11, 14, 20] .
3
Một trong những vấn đề quan trọng cần nghiên cứu để xây dựng các ứng
dụng trưng bày ảo đó là ảnh hưởng của môi trường đến biểu diễn bề mặt đối
tượng đặc biệt là ảnh hưởng của ánh sáng thông qua các nguồn sáng đến biểu
diễn bề mặt đối tượng. Ảnh hưởng của nguồn sáng lên biển diễn bề mặt đối
tượng như đã biết gồm hai phần chính do là ảnh hưởng đến việc hiển thị đối
tượng và ảnh hưởng thứ hai là làm thay đổi bề mặt đối tượng. Ảnh hưởng của
nguồn sáng lên hiển thị đối tượng thông qua chiếu sáng là việc không thể
thiếu được vì phải có chiếu sáng thì mời có đồ họa ba chiều và trưng bày ảo
đồng thời trưng bày ảo có một số đặc điểm riêng biệt của nó vì vậy nghiên
cứu về chiếu sáng và chiếu sáng trong trưng bày ảo là một vấn đề cần thiết.
Trên thực tế các đối tượng thay đổi theo thời gian do đó nghiên cứu ảnh
hưởng của nguồn sáng và các điều kiện môi trường đến bề mặt đối tượng
không chỉ có tác đụng làm tăng chất lượng hình ảnh của ứng dụng trưng bày
ảo mà các kết quả nghiên cứu này còn có thể sử dụng làm công cụ để trợ giúp
cho việc trưng bày đối tượng thực làm để cho chúng ít bị thay đổi, phá hủy
theo thời gian dưới sự tác động của ánh sáng và môi trường.
Nhận biết được sự quan trọng đó, với mục đích mô phỏng được sự ảnh
hưởng của các nguồn sáng vào biểu diễn bề mặt của đối tượng ba chiều trên
cơ sở đó phát triển hệ thống trưng bày ảo các hiện vật ảo ba chiều. Mục tiêu
cụ thể là nghiên cứu các kỹ thuật chiếu sáng và hiệu ứng bóng bề mặt của vật
thể trưng bày trong không gian ba chiều
Tôi đã lựa chọn đề tài:” Nghiên cứu kỹ thuật tạo bóng bề mặt của vật
thể và ứng dụng”. Đề tài nghiên cứu các thuật toán để cài đặt mô phỏng cho
một số hiện vật trong Nhà bảo tàng văn hóa các dân tộc Việt Nam tại thành
phố Thái Nguyên.
Ứng dụng kết quả đã nghiên cứu vào xây dựng một phần mềm trưng bày
ảo cho một số hiện vật tại Bảo tàng Văn hóa các dân tộc Việt Nam tại TP Thái
Nguyên với các lý thuyết phân tích về tác động của môi trường lên hiện vật.
4
2. Mục tiêu
- Nghiên cứu các thuật toán đã và đang được vận dụng tại Việt Nam
và thế giới để khái quát hóa lựa chọn công cụ phù hợp nhất cho việc cài đặt.
- Lựa chọn các vật thể và không gian thích hợp để phân tích các hình
ảnh thực tiễn làm cơ sở đối chứng cho kết quả cài đặt
- Đánh giá rút kinh nghiệm về thuật toán để có thể cải tiến việc mô
phỏng tốt hơn.
3. Đối tượng và phạm vi nghiên cứu của đề tài
+ Đối tượng nghiên cứu:
Đối tượng nghiên cứu là các kỹ thuật chiếu sáng, các kỹ thuật biểu
diễn sự biến đổi của đối tượng dưới sự tác động của ánh sáng và điều kiện
môi trường trong lĩnh vực thực tại ảo và đồ họa ba chiều.
+ Phạm vi nghiên cứu:
Tập trung nghiên cứu các kỹ thuật tính toán bản đồ chiếu sáng và
ứng dụng kết hợp bản đồ chiếu sáng cho các ứng dụng trưng bày ảo. Ảnh
hưởng của ánh sáng lên sự biến đổi bề mặt một số loại chất liệu phổ biến
trong lĩnh vực trưng bày ảo.
5
Chương 1
TỔNG QUAN VỀ MÔ PHỎNG VÀ BÀI TOÁN HIỂN THỊ
MÔ HÌNH BÓNG BỀ MẶT
1.1. Tổng quan về thực tại ảo
1.1.1.Thực tại ảo là gì
Thực tại ảo (Virtual reality- VR) là một hệ thống mô phỏng trong đó đồ họa
máy tính được sử dụng để tạo ra một thế giới "như thật". Hơn nữa, thế giới "nhân
tạo" này không tĩnh tại, mà lại phản ứng, thay đổi theo ý muốn (tín hiệu vào) của
người sử dụng (nhờ hành động, lời nói,..). Điều này xác định một đặc tính chính của
VR, đó là tương tác thời gian thực. Thời gian thực ở đây có nghĩa là máy tính có
khả năng nhận biết được 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 trên màn hình ngay theo ý
muốn và bị thu hút bởi sự mô phỏng này. Tương tác và khả năng thu hút của VR
góp phần lớn vào cảm giác đắm chìm, cảm giác trở thành một phần của hành động
trên màn hình mà người sử dụng đang trải nghiệm. Nhưng VR còn đẩy cảm giác
này "thật" hơn nữa nhờ tác động lên tất cả các kênh cảm giác của con người. Trong
thực tế, người dùng không những nhìn thấy đối tượng đồ họa 3D nổi, điều khiển
(xoay, di chuyển,..) được đối tượng trên màn hình (như trong game), mà còn sờ và
cảm thấy chúng như có thật. Ngoài khả năng nhìn (thị giác), nghe (thính giác), sờ
(xúc giác), các nhà nghiên cứu cũng đã nghiên cứu để tạo các cảm giác khác như
ngửi (khứu giác), nếm (vị giác). Tuy nhiên hiện nay trong VR các cảm giác này
cũng ít được sử dụng đến. Như vậy: “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”, [3,4,6,7,8]
1.1.2. Lịch sử phát triển của thực tại ảo
Thực tại ảo là một thuật ngữ mới xuất hiện khoảng đầu thập kỷ 90, nhưng ở
Mỹ và châu Âu VR đã và đang trở thành một công nghệ mũi nhọn nhờ khả năng
ứng dụng rộng rãi trong mọi lĩnh vực (nghiên cứu và công nghiệp, giáo dục và đào
tạo cũng như thương mại, giải trí,) tiềm năng kinh tế cũng như tính lưỡng dụng
6
(trong dân dụng, quân sự) của nó. VR không phải là một phát minh mới, mà ngay từ
năm 1962 Morton Heilig (Mỹ) đã phát minh ra thiết bị mô phỏng SENSORAMA.
Tuy nhiên cũng như nhiều ngành công nghệ khác, VR chỉ thực sự được phát triển
ứng dụng rộng rãi trong những năm gần đây nhờ vào sự phát triển của tin học (phần
mềm) và máy tính (phần cứng). Thuật ngữ “virtual reality – thực tại ảo được đưa ra
bởi Jaron Lanier (người sáng lập công ty VPL Research, tại Redwood – California,
một trong những công ty đầu tiên cung cấp các sản phẩm cho môi trường ảo).
Sự hình dung liên quan đến các tác động đầu ra mà máy tính tạo ra về thị giác,
thính giác hay các giác quan khác khi người sử dụng tương tác với thế giới bên
trong máy tính. Thế giới này có thể là các mô hình được thiết kế với sự trợ giúp của
máy tính, là sự mô phỏng hay là cách nhìn nhận một cơ sở dữ liệu. Hệ thống có thể
có tính động, các mô phỏng vật lý hay các hoạt cảnh.
1.1.3 .Ứng dụng của thực tại ảo
Tại các nước phát triển, chúng ta có thể nhận thấy VR được ứng dụng trong
mọi lĩnh vực: Khoa học kỹ thuật, kiến trúc, quân sự, giải trí, du lịch,... và đáp ứng
mọi nhu cầu: Nghiên cứu- Giáo dục- Thương mại-dịch vụ.
Y học, du lịch là lĩnh vực ứng dụng truyền thống của VR. Bên cạnh đó VR
cũng được ứng dụng trong giáo dục, nghệ thuật, giải trí, du lịch ảo (Virtual Tour),
bất động sản... Trong lĩnh vực quân sự, VR cũng được ứng dụng rất nhiều ở các
nước phát triển. Bên cạnh các ứng dụng truyền thống ở trên, cũng có một số ứng
dụng mới nổi lên trong thời gian gần đây của VR như: VR ứng dụng trong sản xuất,
VR ứng dụng trong ngành rôbốt, VR ứng dụng trong hiển thị thông tin (thăm dò dầu
mỏ, hiển thị thông tin khối, ứng dụng cho ngành du lịch, ứng dụng cho thị trường
bất động sản....) VR có tiềm năng ứng dụng vô cùng lớn. Có thể nói tóm lại một
điều: Mọi lĩnh vực "có thật " trong cuộc sống đều có thể ứng dụng "thực tế ảo" để
nghiên cứu và phát triển hoàn thiện hơn [1].
1.2. Mô hình 3D trong thực tại ảo
Mô hình 3D hiện đang ngày càng phổ biến và sử dụng rộng rãi trong các ứng
dụng mô phỏng, thực tại ảo. Ta thấy, với các khoảng cách khác nhau trong khi quan
sát chúng ta sẽ thấy các độ chi tiết khác nhau của mô hình. Điều này có nghĩa các
mô hình ở gần sẽ rất chi tiết trong khi các mô hình càng ở xa sẽ càng mờ. Để tối ưu
7
tính toán chúng ta thường phải có sẵn các mô hình 3D với các mức độ chi tiết khác
nhau. Khi biểu diễn vật ở mỗi khoảng cách nhất định chương trình sẽ gọi và sử
dụng mô hình với độ chi tiết tương ứng, kỹ thuật này trong thực tại ảo gọi là LOD
(Level Of Detail) . Kỹ thuật này đã được F. Biljecki , H. Ledoux và J. Stoter trình
bày để biểu diễn các mô hình 3D các tòa nhà năm 2016 [15], Như vậy, mỗi mô hình
3D phải thiết kế lại nhiều lần với độ chi tiết khác nhau. Điều này dẫn tới thời gian
và chi phí tạo ra mô hình ra tăng và đồng nghĩa với tổng chi phí cho một hệ thống
trưng bày ảo là lớn. Để giảm chi phí khi xây dựng mô hình cần áp dụng các chiến
lược tự động tối ưu mô hình dựa trên khoảng cách quan sát ngay khi chương trình
đang chạy. Quá trình tối ưu này gọi là LOD tự động. Trong đó, độ chi tiết của mô
hình được tự động tính toán dựa trên khoảng cách của nó tới vị trí quan sát.
Có ba phương pháp chính để tạo ra mô hình 3D: Một là sử dụng các phần
mềm thiết kế 3D tạo ra thư viện mô hình (do các nhà thiết tạo ra). Hai là sử dụng
các lệnh trong ngôn ngữ lập trình để vẽ ra các mô hình. Ba là sử dụng các thiết bị
máy quét 3D tạo mô hình từ vật thể thực. Phương pháp dùng lệnh rất vất vả tốn kém
và hầu như không còn được sử dụng nữa. Phương pháp sử dụng các thiết bị phần
cứng là máy quét để tạo mô hình 3D mang nhiều ưu điểm như thời gian tạo ra một
mô hình ngắn, độ chính xác cao, tính ổn định, chi phí rẻ v.v.. Tuy nhiên, mô hình
tạo ra từ máy quét có một nhược điểm chính là số lượng lưới lớn. Do đó, trên thực
tế đa phần các chương trình mô phỏng thực tại ảo thường sử dụng các mô hình sinh
ra từ phần mềm thiết kế 3D.
Khi xây dựng ứng dụng, chúng ta cần giải pháp tiết kiệm các chi phí khi xây
dựng mô hình. Ý tưởng của giải pháp chúng ta chỉ thiết kế mô hình 3D của đối
tượng một lần duy nhất còn các cấp độ giảm lưới sẽ tự động tạo ra mô hình mới
tương ứng.
Đầu tiên, ta phải xây dựng các mô hình hiện vật 3D ở mức độ chi tiết nhất. Sau đó
dựa vào khoảng cách từ mắt người tham quan ảo đến vị trí của hiện vật 3D sẽ tiến
hành rút gọn bề mặt lưới của mô hình đó. Quy luật là khoảng cách càng xa thì lưới
của mô hình đó càng giảm. Chúng tôi chia độ chi tiết của mô hình thành bốn mức từ
LOD1 tới LOD4. Trong đó, lưới mức độ một (LOD1) ở trong khoảng cách gần nhất
với mức mô tả chi tiết nhất, và lưới cấp độ bốn (LOD4) ở khoảng cách xa nhất.
8
Quá trình chuyển từ LOD1 sang thấp hơn là quá trình rút gọn lưới của các
mô hình trong cảnh của bảo tàng mà chúng tôi mong muốn [2]. Số lưới của mô hình
cấp độ LOD2 bằng khoảng 50% số lưới của mô hình cấp độ LOD1, tương tự ta quy
định số lưới LOD3 bằng khoảng 25% số lưới LOD1, và số lưới LOD4 bằng khoảng
12,5% số lưới LOD1. Với việc giảm lưới này thì các mô hình sẽ bị biến dạng và đôi
khi sẽ không còn là chính mô hình đó mà biến thành một mô hình khác và điều này
không chấp nhận được. Do đó, chúng ta cần một thuật toán rút gọn lưới hợp lý sao
cho khi chúng ta giảm lưới ở các cấp độ khác nhau thì việc mô hình bị biến dạng là
thấp nhất. Trong các phần tiếp theo của bài báo chúng tôi trình bày kỹ thuật tối ưu
lưới và kết quả sau quá trình cài đặt ứng dụng trong bài toàn trưng bày ảo.
Có hai dạng bài toán tối ưu mô hình 3D thường được nhắc đến trong lĩnh vực
mô phỏng 3D với đầu vào và đầu ra cùng là mô hình 3D nhưng mang những đặc
điểm khác nhau giữa mô hình trước tối ưu và sau tối ưu. Thứ nhất, là tối ưu về mặt
hình ảnh. Ở đó, với đầu vào là một mô hình 3D đã được thiết kế hoặc thu từ máy
quét người xử lý cần nâng cao chất lượng hình ảnh của mô hình. Khi đó chúng ta
cần chú ý tới việc tối ưu chất lượng hình ảnh hoặc lưới của mô hình, điều này dẫn
tới các bài toán xử lý về ánh sáng, góc cạnh để khi render thu được hình ảnh chân
thực nhất có thể. Trên thực tế quá trình tối ưu này dẫn tới một trường phái thiết kế
siêu thực. Ở đó những nhà thiết kế có thể thay thế nhân vật thực bằng nhân vật thiết
kế ảo. Thứ hai, là tối số lượng lưới (mặt và đỉnh trong mô hình) với bài toán này
đầu vào là một mô hình 3D (thường là mô hình thu được từ máy quét) và đầu ra là
mô hình đó với số lượng lưới giảm đi nhưng vẫn đảm bảo hình dạng và hình ảnh
của đối tượng không thay đổi nhiều giữa trước và sau tối ưu. Trong nội dung luận
văn tập trung vào giải quyết bài toán thứ hai. Tức là nghiên cứu các kỹ thuật làm
giảm lưới mô hình 3D nhưng vẫn đảm bảo giữ được hình dạng và hình ảnh của đối
tượng sau khi render.
Đồ họa máy tính 3D thường được nói đến là mô hình (model) 3D. Ngoài các
đồ họa được kết xuất, model được chứa trong các tập tin dữ liệu đồ họa. Tuy nhiên,
có sự khác biệt. Model 3D là đại diện toán học của bất kỳ đối tượng ba chiều. Một
mô hình không phải là một kỹ thuật đồ họa cho đến khi nó được hiển thị. Một mô
hình có thể được hiển thị trực quan như là một hình ảnh hai chiều thông qua một
quá trình gọi là kết xuất 3D, hoặc được sử dụng trong mô phỏng máy tính phi đồ
9
họa và tính toán. Đồ hoạ 3D đang được nghiên cứu ứng dụng trong mọi lĩnh vực
một cách mạnh mẽ hiện nay là: Khoa học kỹ thuật, kiến trúc, quân sự, giải trí, du
lịch, địa ốc... và đáp ứng mọi nhu cầu: Nghiên cứu - Giáo dục - Thương mại - dịch
vụ. Bên cạnh các ứng dụng truyền thống ở trên, cũng có một số ứng dụng mới nổi
lên trong thời gian gần đây của đồ hoạ 3D như: đồ hoạ 3D ứng dụng trong sản suất,
trong ngành rôbốt, trong hiển thị thông tin (thăm dò dầu mỏ, hiển thị thông tin khối,
) đồ hoạ 3D có tiềm năng ứng dụng vô cùng lớn. Có thể nói: Mọi lĩnh vực “có
thật” trong cuộc sống đều có thể ứng dụng “thực tế ảo” để nghiên cứu và phát triển
hoàn thiện hơn.
Một lĩnh vực đầy hứa hẹn là việc sử dụng trưng bày ảo 3D trong giáo dục
- giải trí, cụm từ này đang được sử dụng rộng rãi, nó thể hiện cho một nền giáo dục
hiện đại không theo khuôn phép truyền thống, điều đó có nghĩa là vừa có thể học và
vừa có thể giải trí trong khi học sinh đang tham gia một kịch bản nhập vai nào đó
hoặc có thể tham gia một trò chơi... trên thực tế tương tác nhập vai có thể nắm bắt
được sự chú ý của người sử dụng hệ thống, cùng một lúc có thể cung cấp nhiều
thông tin không giống như phương pháp trước đây khi sử dụng hệ thống không phải
là đa phương tiện. Ngoài ra, trưng bày ảo 3D là một cách thể hiện rất hiện đại của
sự tương tác giữa người dùng và máy tính nó không dừng lại ở việc người dùng chỉ
sử dụng máy tính với những mục đích cho công việc, mà nó còn mở ra vô vàn
những thứ hấp dẫn khác với người sử dụng hệ thống mà người dùng như đang hóa
thân thành nhân vật được khám phá nhiều nơi mà mình chưa biết.
Hầu hết các trưng bày, trình diễn từ ảnh tĩnh đến các video hoạt hình đều
biểu diễn trong không gian 3D, do vậy việc nghiên cứu các kỹ thuật thể hiện hình
ảnh 3D ngày càng được phát triển rộng rãi. Việc thể hiện 3D với các tác động của
ánh sáng nâng cao hiệu quả thị giác làm cho việc quan sát vật thể rõ hơn tăng
cường, nhấn mạnh những phần trọng tâm của vật thể theo mong muốn của người
quan sát. Do vậy, việc nghiên cứu tổng quan để đưa ra những vấn đề cần phát triển
là cần thiết là mục tiêu đề tài cần đạt được.
+ Ứng dụng chiếu sáng toàn cục và chiếu sáng cục bộ trong trưng
bày ảo
- Trong các ứng dụng trưng bày ảo, chúng ta có thể chia thành hai phần
độc lập một là không gian trưng bày là nơi mà ta sẽ đặt các hiện vật ảo vào
10
đó, hai là các hiện vật được trưng bày. Không gian trưng bày thường là các
phòng cố định, các bố trí chiếu sáng trong không gian này cũng thường cố
định do đó chúng ta có thể ứng dụng kỹ thuật chiếu sáng toàn cục để tạo trước
bản đồ chiếu sáng cho toàn bộ không gian và trong quá trình kết xuất ảnh của
không gian chúng ta sẽ sử dụng trực tiếp bản đồ chiếu sáng này để tính ánh
sáng cho từng điểm trong không gian. Các hiện vật ảo được đặt vào các vị trí
cho trước trong không gian trưng bày, tại mỗi vị trí ta có thể các hiện vật có
thể thay đổi các hiện vật để tạo ra sự sinh động cho không gian, mỗi hiện vật
được chiếu sáng để làm nổi bật nó trong không gian do đó chúng ta có thể sử
dụng kỹ thuật chiếu sáng cục bộ để chiếu sáng cho từng hiện vật.
Với tư tưởng như vậy chúng tôi tiến hành cài đặt và áp dụng nó vào
việc trưng bày các hiện vật trong bảo tàng và dưới đây là một số hình ảnh
minh họa cho kết quả thực nghiệm.
Hình 1.1. Một hình ảnh kết quả thực nghiệm
1.3. Vai trò của việc mô phỏng không gian 3D
Từ trước tới nay ,các dự án mô phỏng thường hay tập trung vào 2D đơn
giản, từ các hình ảnh 2D, video 2D đã xây dựng, có thể triển khai qua các
kênh truyền thống để tạo ra một một hệ thống mô phỏng để mọi người có thể
xem, thực hành như trên máy tính, trên nền tảng webstie, hay trên các hệ
thống máy chiếu, phong lab chuyên dụng tùy thuộc từng nội dung.
11
Sự hạn chế của công nghệ 2D trở thành 1 rào cản cho sự phát triển, nó
không phát huy được hết các ưu điểm của các hệ thống mô phỏng. Công nghệ
Mô phỏng 3D là bước tiến tiếp theo, về thực tế công nghệ 3D đã hầu như
khắc phục đượ các yếu điểm của công nghệ mô phỏng 2D như : các điểm
khuất, góc khuất khi mô phỏng lại các vật thể, máy móc,k...cập chiếu sáng toàn cục là chiếu sáng mà tại mỗi điểm giá trị
cường độ sáng được tính dựa trên sự ảnh hưởng tổng hợp của các nguồn sáng
trực tiếp và các nguồn sáng gián tiếp (ánh sáng phản xạ lại từ các điểm, đối
tượng xung điểm điểm đang xét). Với hướng tiếp cận này độ phức tạp tính
toán của các thuật toán thường là rất lớn do đó khó có khả năng ứng dụng trực
tiếp vào công đoạn kết xuất ảnh cho các ứng dụng trưng bày ảo. Tuy nhiên
chúng ta có thể sử dụng chúng để tính trước các bản đồ sáng. Các bản đồ sáng
thu được bằng các thuật toán này, sau đó có thể ứng dụng trực tiếp vào trong
quá trình tạo hình ảnh môi trường theo thời gian thực mà không phải tiến
hành chiếu sáng lại. Việc ứng dụng bản đồ chiếu sáng trong trưng bày ảo một
mặt làm tăng tốc độ kết xuất hình ảnh không gian trưng bày một mặt khác
chất lượng chiếu sáng cũng được cải thiện có được điều này là vì các tính toán
chiếu sáng phức tạp đã được thực hiện trước ở bước tính bản đồ chiếu sáng.
Ngoài ra bản đồ chiếu sáng có thể làm công cụ để đo lường cường độ sáng
29
của không gian tại mọi điểm qua đó có thể đánh giá được hiệu quả của chiếu
sáng toàn cục. Các kỹ thuật tạo hình dựa trên chiếu sáng toàn cục đã và đang
được sử dụng phổ biến hiện nay có thể kêt đến như kỹ thuật Ray tracing,
Radiosity, Photomapping v.v..
Thuật toán Ray tracing:
Ray tracing là một kỹ thuật tạo hình ảnh trong đồ họa 3D được đưa ra
khá sớm bởi tác giả Appel A[4] vào năm 1968 cho đến ngày này đã có nhiều
nghiên cứu nhằm cải tiến tốc độ cũng như chất lượng của của kỹ thuật này tuy
nhiên tư tưởng cốt lõi của kỹ thuật là hầu như không thay đổi.
Hình 2.2: Minh họa quá trình sinh và dò tia của ray tracing
Ý tưởng cơ bản của kỹ thuật này dựa trên việc dò tia ánh sáng đến được
với các điểm trên màn chiếu. Nó thực hiện thông qua các bước cơ bản như
sau: Từ điểm quan sát và mặt phẳng quan sát ta xây dựng một tập hợp các tia
xuất phát từ điểm quan sát đi qua mỗi điểm trên mặt phẳng quan sát. Với mỗi
tia sinh được ta thực hiện quá trình dò tia bằng cách tìm điểm trên đa giác
thuộc một đối tượng bất kỳ gần nhất trong không gian thế giới va chạm với tia
cần dò, khi tìm thấy một điểm và chạm với tia cần dò tại điểm va chạm đó ta
tiến hành việc tính toán ánh sáng tại điểm va chạm. Việc tính toán ánh sáng
tại điểm va chạm được thực hiện bằng cách xây dựng các tia với điểm gốc là
điểm va chạm và điểm ngọn là các điểm trên các nguồn sáng trong không
30
gian nếu trên đường đi của các tia này không va chạm với bất kỳ điểm đối
tượng nào khác trong không gian thì tiến hành tính toán ánh sáng cho điểm
gốc theo các hiệu ứng đã được trình bày trong phần 3.1. Nếu dừng ở đây thì
thuật toán này sẽ được gọi là thuật toán Ray casting là một thuật toán chiếu
sáng cục bộ. Giá trị chiếu sáng tại điểm đầu tiên này là giá trị chiếu sáng trực
tiếp. Tiếp tục trên điểm va chạm chúng ta tiến hành xây dựng các tia phản xạ
và khúc xạ và sau thực hiện đệ quy quá trình dò ánh sáng cho các tia phản xạ,
khúc xạ thụ được, giá trị chiếu sáng thu được trên các tia phản xạ và khúc xạ
là giá trị chiếu sáng gián tiếp. Việc thực hiện đệ quy được dừng lại khi số
bước lặp đệ quy vượt quá một ngưỡng hoặc hệ số ảnh hưởng của các giá trị
sáng gián tiếp lên giá trị sáng trực tiếp ban đầu nhỏ hơn một ngưỡng cho
trước. Giá trị ánh sáng tại một điểm sẽ được thông qua sự tổng hợp giá trị
sáng trực tiếp và các giá trị sáng gián tiếp.
Ngày nay thuật toán này đã được các hãng sản xuất phần cứng xây
dựng và tích hợp trong các thiết bị tăng tốc đồ họa của họ. Hình dưới đây là
sơ đồ hoạt động của thuật toán Ray tracing được tích hợp trong một số thiết bị
tăng tốc đồ họa của hãng Nvidia
Hình 2.3. Các bước xử lý trong giải thuật Ray tracing
Bằng việc cứng hóa các bước thực hiện của kỹ thuật ray tracing trong
các thiết bị tăng tốc đồ họa có sức mạnh tính toán hàng Gfs việc render thời
gian thực bằng ray tracing đang dần khả thi hơn. Hình dưới đây là so sánh kết
quả của cùng một cảnh với hai kỹ thuật chiếu sáng dựa trên scan line và chiếu
sáng bằng ray tracing
31
Scan line Ray tracing
Hình 2.4: So sánh giữa Scan line và ray tracing
Thuật toán Photon mapping
Photon mapping là một thuật toán chiếu sáng toàn cục với các tiếp cận
dựa trên việc mô phỏng lại đặc tính hạt của ánh sáng. Trái ngược với kỹ thuật
ray tracing photon mapping sinh ra các tia đặc trưng cho các photon ánh sáng
xuất phát từ nguồn sáng, các photon này chuyển động trong không không gian
theo đường thẳng, khi gặp bề mặt đối tượng nó sẽ tương tác với bề mặt đối
tượng, phản xạ, kết hợp, khúc xạ hấp thụ v.v.. sau đó bức xạ ngược lại môi
trường một tập các tia mới mang đặc tính của tia ban đầu kết hợp với các đặc
tính của bề mặt. Ảnh cần dựng trong trường hợp này sẽ là một màn chắn ảo
trong không gian sử dụng để đón nhưng tia tới được bề mặt của ảnh. Khi đó
giá trị màu sắc của từng điểm trên màn chiếu là tổng hợp các giá trị của các
tia đến được màn chiếu sau một khoảng thời gian nhất định. Dưới đây là một
hình ảnh thử nghiệm của kỹ thuật photon mapping
32
Hình 2.5: Chiếu sáng bằng photon mapping
Do cách tiếp cận của photon mapping là dựa trên mô phỏng là photon
của ánh sáng nên nó có khả năng thể hiện được hầu hết các hiệu ứng của ánh
sáng như phản xạ, khúc xạ thậm chí cả hiệu ứng thấu kính, lăng kính photon
maping cũng có khả năng thể hiện được (đây là hai hiệu ứng mà ray tracing
không có khả năng thể hiện được một cách trực tiếp). Tuy nhiên do xuất phát
từ nguồn sáng có rất nhiều tia sáng không liên quan đến ảnh quan sát cũng
được tính toán vì vầy tốc độ thực hiện của thuật toán này là phức tạp hơn
nhiều so với ray tracing.
Các kỹ raytracing và photon mapping là các kỹ thuật chiếu sáng toàn
cục được ứng dụng phổ biến ngoài ra chúng còn nhiều kỹ thuật chiếu sáng
toàn cục khác cũng được ứng dụng trong đồ họa 3D ví dụ như radiocity[9],
hoặc các kỹ thuật dựa trên phương pháp tính toán Monte Carlo[16] v.v.
2.4. Kỹ thuật chiếu sáng cục bộ
- Kỹ thuật chiếu sáng cục bộ là kỹ thuật chiếu sáng mà giá trị ánh sáng
tại mỗi điểm chỉ ảnh hưởng trực tiếp bởi các nguồn sáng trực tiếp mà không
chịu ảnh hưởng bởi các nguồn sáng gián tiếp. Các kỹ thuật chiếu sáng cục bộ
33
có thể kể đến là ray casting và scan line. Trong đó kỹ thuật scan line là kỹ
thuật được đưa ra và ứng dụng khá sớm, hiện nay đây là giải thuật được cứng
hóa trong hầu hết các thiết bị tăng tốc đồ họa ngày nay.
Trong thực tế người ta hay sử dụng khái niệm Graphics pipeline khi đề
cập đến trình thực hiện của kỹ thuật này. Các bước chính trong kỹ thuật được thể
hiện thông qua hình 10 dưới đây. Trong đó quá trình Vertex processing là quá
trình xử lý tại mỗi đỉnh trên từng đa giác đầu vào thông thường tại đây các điểm
sẽ được chuyển đổi từ không gian địa phương của đối tượng về không gian địa
phương của camera, cùng với đó các giá trị cường độ sáng, pháp tuyến trên từng
điểm cũng được ước lượng cách tính giá trị cường độ sáng tại từng điểm cụ được
thực hiện thông qua các mô hình chiếu sáng đã được đề cập trong phần 3.1.
Bước thứ hai của giải thuật này chính là Rasterization tại bước này đầu vào là
các điểm đã được chuyển đổi từ không gian địa phương của camera xang không
gian quan sát thông qua một phép chiếu 3D v.v.. Tại đây các điểm trong đa giác
sẽ được ánh xạ xang không gian ảnh sau đó thuật toán scand line được sử dụng
để xử lý từng điểm trên ảnh dựa vào các tham số của từng đỉnh và vị trí tương
đối của điểm đang xét so với các đỉnh của đa giác đầu vào. Bước cuối cùng của
quá trình này là kết hợp giá trị màu sắc của điểm đang xét với giá trị cũ để tạo ra
giá trị màu sắc cuối cùng.
Hình 2.6. Các bước xử lý trong giải thuật Scan line.
Các mô hình thiết bị tăng tốc đồ họa hiện nay đều cho phép người lập
trình thay lập trình từng bước trong một luồng xử lý cho trước. Do đó người
34
tac có thể tùy biến các thành phần để tạo ra các hiệu đồ họa ứng mong muốn.
Các ngôn ngữ lập trình cho các thiết bị này có thể kể đến như GLSL, CL, hay
HLSL v.v..
Để hiển thị các vật thể 3D nói chung và đặc trưng ánh sáng trong mô tả
vật thể cần có các công cụ trợ giúp để tạo hình, phối cảnh, tô bóng. Đặc biệt
tập trung vào vấn đề xử lý ánh sáng để lựa chọn hướng chiếu, góc nhìn tốt
nhất trong biểu diễn vật thể để có thể làm nổi bật những yếu tố cần nhấn
mạnh cho người quan sát.
Từ những phân tích, tính toán ở trên nay vận dụng vào thực hiện các
thuật toán ứng dụng trên một môi trường đồ họa máy tính cụ thể để biểu diễn
một số vật thể 3D trong khuông viên nhà bảo tàng với một số hiện vật.
Từ việc biểu diễn rời rạc các vật thể ta có thể tích hợp hệ thống thành
một phần mềm thể hiện kịch bản biểu diễn với các vật, tổng thể không gian,
các vị trí quan sát khác nhau để khách thăm có thể lựa chọn các hình ảnh phù
hợp với nhu cầu thăm quan nghiên cứu.
Để triển khai cài đặt, chúng ta có thể sử dụng một công cụ đồ họa máy tính
phù hợp với nhu cầu đối với từng loại đối tượng và mục tiêu biểu diễn. Hiện
nay có một số phần mềm thông dụng như:
Thư viện xử lý đồ họa OpenGL: OpenGL là một tiêu chuẩn kỹ thuật
đồ họa nhằm mục đích tạo ra một giao diện lập trình ứng dụng đồ họa 3D
được phát triển đầu tiên bởi Silicon Graphic, Inc. OpenGL đã trở thành một
chuẩn công nghiệp và các đặc tính kỹ thuật của OpenGL do Uỷ ban kỹ thuật
ARB. OpenGL cho phép phát triển các ứng dụng đồ họa sử dụng nhiều
ngôn ngữ lập trình khác nhau như C/C++, Java, Delphi, v.v, tuy nhiên
OpenGL cũng có thể được dùng trong ứng dụng đồ họa 2D. Giao diện lập
trình này chứa khoảng 250 hàm để vẽ các cảnh phức tạp từ những hàm đơn
giản và được ứng dụng rộng rãi trong các trò chơi điện tử. Ngoài ra còn
được dùng trong các ứng dụng CAD, thực tại ảo, mô phỏng khoa học, mô
35
phỏng thông tin, phát triển trò chơi. OpenGL sử dụng hệ tọa độ theo quy tắc
bàn tay phải.
Công cụ 3DS max: 3DS Max là một ứng dụng mạnh, tích hợp các mô
hình 3 chiều, hoạt cảnh, và tạo cảnh 3D (rendering). Môi trường dễ học của
nó cho phép các nghệ sĩ nhanh chóng tạo dựng một cách nhanh chóng các sản
phẩm. 3DS Max thường được sử dụng để tạo phim và các đoạn video nghệ
thuật, phát triển game, thiết kế sản phẩm đa phương tiện multimedia.. 3DS
Max là đang dẫn đầu các phần mềm trong lĩnh vực thiết kế trực quan, phát
triển game, thiết kế các hiệu ứng ảo và đào tạo. Quy trình chuẩn của một sản
phẩm 3D tĩnh là : Modelling (dựng hình) – Mapping&Shading (Gán vật liệu)
– Lighting (thiết lập ánh sáng) – Rendering (kết xuất ảnh).
+ Công cụ 3D Studio Max version 7.0-8.0
Giao diện làm việc:
1. Menu bar (menu hệ thống)
2. Window/Crossing selection toggle
3. Snap tools (các công cụ bắt dính)
4. Command panels (bảng lệnh)
5. Object categories
6. Rollout (bảng cuộn)
7. Active viewport (khung nhìn hiện hành)
8. Viewport navigation controls (các điều khiển đối với khung nhìn)
9. Animation playback controls
10. Animation keying controls
11. Absolute/Relative coordinate toggle and coordinate display
12. Prompt line and status bar
13. MAXScript mini-listener
14. Track bar
36
15. Time slider (thanh trượt thời gian)
16. Main toolbar (thanh công cụ chính)
Menubar: Chứa các menu: File, Edit, Tools, Group , Views, Create,
Modifiers, Character, Reactor, Amination, GraphEdittors, Rendering,
Customize, MAXScript, Help. Một số menu đặc trưng cần quan tâm là:
+ Group: đây là menu bao gồm các lệnh để nhóm đối tượng.
+ Create: bao gồm các lệnh để tạo ra các hình 2D, 3D và một số dạng hình
học khác.
+ Modifiers: chứa các lệnh hiệu chỉnh.
+ Reactor: chứa các lệnh để tạo ra hay áp dụng tính chất của vật như: mềm,
cứng, thể rắn, lỏng, khí....
+ Character: chứa các lệnh để tạo ra sự chuyển động của hệ thống: vd: các
cử động của tay, chân, bước đi...
+ Animation: chứa các lệnh liên quan đến trạng thái động.
+ Rendering: chứa các lệnh liên quan đến hậu cảnh, ảnh nền, các hiệu ứng
(sương mù, khói...).
+ Customize: các tùy chọn thiết lập cho Max.
+ MaxScript: hoạt động theo kiểu tệp tin batch của HĐH MS-DOS.
Tab panel
Bảng tập hợp các thanh công cụ khác nhau:
a) Main toolbar: Thanh công cụ chính của Max, chứa một số lệnh thông
dụng thực hiện bằng việcc chọn các icon.
b) Command panel
* Geometry:
Chứa các lệnh tạo các đối tượng 3D: khối hộp (Box), khối cầu (Shepre),
khối chóp (Cone)...
- Khi bạn chọn nút Geometry sẽ có một danh sách xổ xuống bên dưới nút
đó, liệt kê nhiều loại khối hình học khác mà bạn có thể tạo ra như: khối hộp,
khối cầu, khối chóp, khối ống, khối trụ, ấm trà...
37
- Khi click lệnh bất kỳ thì sẽ xuất hiện thanh cuộn ở dưới hộp Parameters
cho phép bạn nhập các giá trị như chiều cao (Height), chiều rộng (Width),
chiều dài (Length) và nhiều thông số khác nữa. Vì các thông số cho một đối
tượng đôi khi cần nhiều thanh cuộn, các thanh cuộn trong một vài trường
hợp có thể trở nên dài hơn sức chứa của màn hình, do vậy bạn có thể dùng
mouse để cuốn thanh cuộn lên hoặc xuống bằng cách click và drag theo
chiều đứng vào bất kỳ chỗ nào trống của bảng cuộn.
* Shape: chứa các lệnh để tạo các đối tượng 2D: đường thẳng (Line), hình
tròn (Circle), hình chữ nhật (Rectangle)
* Light & Cameras: chứa các lệnh tạo ánh sáng và camera.
* Helpers: chứa các lệnh về các đối tượng trợ giúp, như tạo lưới riêng, tạo
các Gizmo để diễn tả lửa cháy...
* Space Warp: chứa các lệnh dùng để tạo một số hiệu ứng đặc biệt như: bom
nổ, gió, sóng...
* System: chứa các lệnh liên quan đến chuyển động, ví dụ sự chuyển động
của của cánh tay, bước chân...
Thiết lập khung nhìn
Khi khởi động Max sẽ thấy có 4 khung nhìn mặc định là Top, Front, Left và
Perspective (khung nhìn phối cảnh).
Để định kiểu hiển thị đối tượng cho 1 khung nhìn thì ta Click chuột phải vào
tên của 1 khung nhìn bất kỳ trong các khung nhìn. Sau đó chọn các thiết lập
hiển thị sau:
+ Smooth Highlight: tô đối tượng theo dạng mịn và bóng.
+ WireFrame: hiển thị đối tượng dưới dạng khung nhìn đơn.
+ Smooth: hiển thị đối tượng dưới dạng mịn.
+ Facets Highlight: hiển thị đối tượng dưới dạng phẳng và bóng.
+ Edged Faces: hiển thị đối tượng dưới dạng khung nhìn Edge.
+ Bounding Box: hiển thị đối tượng dưới dạng khung nhìn hộp.
+ Các phép biển đổi đồ thị
38
Biểu tượng Gizmo biến đổi luôn nằm tại tâm biến đổi của đối tượng.
Tâm biến đổi này được gọi là điểm chốt (Pivot Point). Tất cả các đối tượng
đều được làm biến đổi trong mối tương quan với điểm chốt này. Điểm chốt
đặc biệt quan trọng khi bạn thực hiện lệnh xoay. Các điều chỉnh cho điểm
chốt nằm tại Main Toolbar, bên cạnh hộp danh sách thả xuống của
các hệ trục tọa độ tham chiếu. Các nút lệnh cho phép bạn xác lập vị trí điểm
chốt của hệ tọa độ tham chiếu.
MAX cung cấp ba loại điều chỉnh điểm chốt:
- Use Pivot Point Center (tâm của điểm chốt)
Mỗi đối tượng trong Max có một hệ tọa độ cục bộ của riêng nó. Gốc của
hệ tọa độ cục bộ này, được gọi là điểm chốt, tùy theo đối tượng có tâm ở giữa
hoặc tâm ở đáy. Đây là vị trí mặc định. Khi bạn chọn một hệ tọa độ khác,
chúng luôn có gốc tọa độ tại điểm chốt, nhưng phương hướng thì khác nhau.
Ví dụ: Chọn cùng lúc hai đối tượng, mỗi đối tượng có một tâm riêng, khi
xoay, chúng sẽ xoay theo tâm xoay của riêng mình.
Hình 2.7. MAX cung cấp ba loại điều chỉnh điểm chốt
- Use Selection Center (tâm của tập chọn) :
Khi chọn nhiều đối tượng, loại tùy chọn của tâm điểm chốt sẽ không còn
dễ sử dụng nữa. Tùy chọn này xác định điểm chốt nằm ngay tại tâm hình học
39
của các đối tượng đang được chọn, và khi xoay, tất cả các đối tượng sẽ sử
dụng tâm chung giữa các đối tượng.
Hình 2.8. Use Selection Center (tâm của tập chọn)
- Use Transform Coordinate Center (tâm của hệ tọa độ phép biến đổi)
Khi bạn chọn một hệ tọa độ tham chiếu, nó có thể có một tâm điểm
riêng. Ví dụ, tùy chọn hệ tọa độ World có tâm điểm tại 0, 0, 0.
Hình 2.9. Transform Coordinate Center (tâm của hệ tọa độ phép biến đổi)
- Thay đổi vị trí điểm chốt (tâm xoay)
Để thay đổi hẳn vị trí điểm chốt của một đối tượng, chọn đối tượng đó, rồi
click bảng lệnh Hiarechy (phả hệ), nơi bạn có thể tìm thấy các điều chỉnh cho điểm
chốt.
- Affect Pivot Only
Chỉ làm biến đổi điểm chốt của đối tượng mà thôi, bạn không thể di chuyển,
xoay, scale khối hình học khi nút lệnh này được bật. Một biểu tượng đặc biệt
xuất hiện để bạn thực hiện các phép biến đổi (di chuyển, xoay, scale) cho điểm chốt.
- Affect Object Only
40
Ngược lại với lệnh Affect Pivot Only. Ở đây điểm chốt vẫn giữ nguyên vị trí,
bạn làm biến đổi trên đối tượng tùy ý.
- Center to Object
Gióng cho điểm chốt trở về giữa tâm của đối tượng hiện hành
- Align to Object
Gióng cho các trục X, Y, Z của điểm chốt trùng khớp với các trục X, Y, Z của
hệ toạ độ cục bộ được chọn.
- Align to World
Gióng các trục X, Y, Z của điểm chốt trùng khớp với hệ tọa độ thế giới
- Reset Pivot
Định trở lại điểm chốt về vị trí mặc định
Có rất nhiều trường hợp bạn cần phải thay đổi vị trí điểm chốt cho một đối
tượng. Khi bạn nhập một đối tượng từ một chương trình khác, bạn thường phải
dùng đến bảng lệnh này, vì thường thì điểm chốt của đối tượng được nhập vào chưa
sẵn sàng nằm ngay tại tâm của nó đâu.
+ Đánh bóng các khối Shadow volumes.
Lấy một cái nhìn giả định này. Các đường màu đen cho thấy miền quan sát:
Hình 2.10. Trước khi Occlusion Culling.
Tư tưởng đằng sau kỹ thuật khối bóng là điều này:
41
Hình 2.11. Dung lượng phát triển bóng
Đối với mỗi lỗ hổng tiềm năng, tạo một bóng đổ. Ảnh mà điểm nhìn là
một nguồn sáng thực tế. Khối bóng đối với một đối tượng sau đó là miền
không gian mà nằm trong bóng tối của đối tượng đó. Giải pháp, tất nhiên, là
bất kỳ đối tượng mà nằm trong khối bóng của đối tượng khác là không nhìn
thấy được, và có thể được chọn lọc từ đó. Trong hình, các khối bóng chỉ được
báo trong cùng màu như đối tượng mà các khối bóng thuộc quyền sở hữu.
Một cách hiển nhiên, đường màu xanh là lỗ hổng quan trọng nhất. (lỗ hổng là
một đối tượng mà một phần hoặc hoàn toàn cản trở lượng ánh sáng đến mắt).
Tìm các occluder tốt.
Mục tiêu của kỹ thuật shadow volume là để giảm sự phức tạp chiều
sâu, nhưng nếu đã tạo ra một shadow volume đối với mỗi đối tượng trong
cảnh, tổng phí lớn hơn sự tiết kiệm. Cần chọn một số đối tượng được giới hạn
từ cảnh mà sẽ làm các occluder tốt nhất.
Giả định rằng cảnh bao gồm polygon soup – tức là không có sự phân
cấp hoặc phân chia nhỏ bất cứ gì. Điều này có nghĩa rằng sẽ cần tìm các đa
giác lớn để sử dụng như các occluder. Sử dụng các đa giác có thuận lợi là nó
làm mọi thứ đơn giản hơn nhiều: Tạo một shadow volume thì tương đối khó
khăn đối với các đối tượng rắn, nhưng đối với các đa giác đó là một vấn đề
nhỏ.
42
Tất nhiên, không phải đa giác làm một occluder tốt. Sẽ muốn khởi động
bằng cách chọn một đa giác lớn nhất trong cảnh. Nếu chỉ làm việc cùng với
các hình tam giác, có thể hiệu quả hơn đối với nhóm một vài tam giác trong
một đa giác lớn và sử dụng như một occluder. Có thể vẫn sử dụng các tam
giác cho rendering, bởi vậy sẽ không là một vấn đề. Điều duy nhất cần ghi
nhớ là occluder phải là lồi.
Khi đã chọn một nhóm đầy đủ của các đa giác lớn, sẽ muốn kiểm tra
nếu các đa giác quả thực là các occluder tốt. Có thể làm điều này bằng cách
tạo một tập ngẫu nhiên các điểm nhìn cung quanh đa giác, và kiểm tra bao
nhiêu các đa giác khác nó bít kín từ các điểm nhìn. Tất nhiên, chỉ nên lựa
chọn các điểm nhìn mà thực sự với tới được bởi người sử dụng của ứng dụng,
bởi vậy kiểm tra nếu các điểm tạo thực sự bên ngoài cảnh. Giữ các occluder
mà phát sinh các kết quả tốt nhất và loại bỏ những occluder khác.
Culling.
Lựa chọn các occluder được làm như một tiền xử lý, tất nhiên, vì tất cả
các thử nghiệm và lỗi có thể tạo cho nó một bit của một thao tác kéo dài. Một
khi đã chọn chúng , tuy nhiên, mọi thứ trở nên khá đơn giản. Khi rendering
một cảnh, xử lý tất cả các occluder, Tạo các shadow volume đối với chúng và
culling mọi thứ biến mất là bên trong. Để tối ưu hóa quá trình culling, nên cố
gắng sắp xếp các occluder đến nỗi mà một occluder quan trọng nhất được xử
lý đầu tiên. Sẽ cần sắp xếp một vài số liệu để xác định rằng một occluder
“quan trọng” như thế nào. Số liệu này có thể dựa trên vùng không gian màn
hình của occluder, và trên khoảng cách của nó đến camera. Xa hơn nữa, các
backfacing occluder nên bị bỏ qua, như nên là các occluder mà bên ngoài
phạm vi của tầm nhìn.
Tạo một shadow volume đối với một đa giác là một nhiệm vụ nhỏ. Nó
dễ dang để định nghĩa một mặt phẳng từ ba điểm, và đó là tất cả cần làm. Đối
với mỗi cạnh của đa giác, tạo một mặt phẳng sử dụng hai đỉnh của cạnh và vị
trí camera. Sauk hi làm điều đó, cũng nên thêm mặt phẳng lên đa giác mà nó
nằm trên – mặt khác sẽ kết thúc culling các đối tượng mà đứng trước
43
occluder. Chắc chắn rằng tất cả các pháp tuyến của mặt phẳng điểm trong
cùng một hướng (Hoặc bên trong hoặc bên ngoài của shadow volume).
Hình 2.12. Một ảnh hoa văn phức tạp
Khi đã tạo ra một khối bóng, cần phải cắt xén toàn bộ cảnh chống lại
nó. Loại bỏ bất cứ gì bên trong. Điều này bao gồm cả các lỗ hổng khác, tất
nhiên, như không có điểm trong các lỗ hổng vô hình đang xử lý. Cắt xén thực
tế thì rất đơn giản trong trường hợp này: Nếu một đa giác được tiêu hủy, tất cả
các đỉnh phải nằm bên trong khối bóng. Do đó, tất cả cần làm là kiểm tra các
điểm chống lại các phương trình mặt phẳng của khối.
Kiểm tra mỗi một đa giác trong cảnh chống lại tất cả các khối bóng có lẽ là
đỡ tốn kém hơn một bít, bởi vậy sẽ cần một vài cách để tăng tốc việc này lên. Một
cây octree (octree là một cây cấu trúc dữ liệu, trong đó mỗi nút nội bộ có đến tám
con. Octrees thường được sử dụng để phân vùng một không gian ba chiều bằng
cách phân chia đệ quy nó vào tám octants. Octrees là ba chiều tương tự của các cây
tứ phân. Tên sẽ được thành lập từ Tháng Mười + cây, và thường viết "octree",
không phải "octtree") sẽ cho phép để kiểm tra các hộp chống lại các khối bóng, thay
vào đó là các đa giác riêng lẻ. Theo cách này, sẽ loại bỏ các phần lớn cảnh khá
nhanh chóng. Nếu muốn làm, sau này có thể vẫn kiểm tra các đa giác còn lại.
Như vậy, để biểu diễn vật thể 3D với những kết cấu ánh sáng chúng ta phải
có các kỹ thuật để thực thi trên phần mềm, nghiên cứu này đã tìm hiểu phát triển
một số kinh nghiệm và phương pháp để đạt được mục tiêu biểu diễn vật thể có hiệu
quả nhất.
44
Chương 3
MÔ PHỎNG TÁC ĐỘNG ÁNH SÁNG LÊN BỀ MẶT VẬT THỂ
3.1. Phân tích các yêu cầu hệ thống
Hệ thống biểu diễn các vật 3D cần thể hiện các góc nhìn quan sát vật
như trong không gian 3 chiều. Người quan sát có thể đứng ở bất cứ vị trí và
góc nhìn nào để quan sát vật. Tuy nhiên trong biểu diễn không thể thể hiện
như trong thế giới thực mà cần lựa chọn những vị trí, điểm quan sát quan
trọng để thỏa mãn nhu cầu quan sát nhưng số hình biểu diễn không quá lớn.
Yêu cầu thiết kế là chọn đúng, đủ các hình để thực hiện vẽ thể hiện
- Hệ thống trình diễn 3D cần tạo ra không gian quan sát và các hình ảnh
tương ứng để người dùng “nhìn” vật thể như trong thế giới thực
- Dựa trên nền tảng lý thuyết nghiên cứu của đề tài chủ yếu mô tả thuộc
tính bóng (bóng bề mặt và bóng đổ) của vật trong giới tự nhiên có tính đến sự
thay đổi của bề mặt vật thể dưới tác động của môi trường
- Khi thể hiện ngoài hình ảnh tĩnh còn cần thể hiện tính động của vật
thể (vị trí nguồn sáng thay đổi, cường độ ánh sáng thay đổi đều ảnh hưởng
đến bóng của vật thể)
- Bên cạnh thể hiện vật thể trưng bày cô lập, hệ thống cần phân tích
trong một không gian bảo tàng tích hợp có nhiều vật thể từ đó mới phát triển
thành hệ thống bảo tảng ảo triển khai ứng dụng được trong thực tiễn
- Lựa chọn các vật thể đặc trưng để có thể khai thác tối ưu các thuật toán
biểu diễn đảm bảo thực nghiệm tốt các ý tưởng của thuật toán phát triển. Mỗi vật
thể cần phân tích như trên để lựa chọn số lượng các hình ảnh thích hợp
- Phân tích tương tác giữa người dùng với hình ảnh 3D của vật thể:
Các đối tượng người dùng như: Nhân viên bảo tàng, khách thăm quan phổ
thông, các chuyên gia, nhà nghiên cứu.
- Phân tích các chức năng phần mềm và giao diện thể hiện
45
3.2. Phân tích chi tiết
3.2.1. Phân tích hình ảnh
Để phân tích các khía cạnh của vật 3D trước hết ta cần khảo sát trong
thế giới thực các đặc trưng hình ảnh để thấy các đặc điểm cần diễn tả
Ví dụ: Hình dưới đây là một chiếc cối giã gạo, trống con (ảnh trong bảo
tàng Văn hóa các dân tộc Việt Nam), dưới góc nhìn trên bên phải ta thấy
tương đối rõ nét, tuy nhiên ánh sáng chưa đủ nên cần biểu diễn ánh sáng
mạnh hơn. Cũng có thể quan sát thêm một số góc nhìn khác, các góc nhìn này
có thể được phát triển trong môi trường ảo.
Hình 3.1: Một số vật thể trưng bày
Như vậy phần mềm trình diễn không những mô tả như ảnh chụp mà
còn phát triển tốt hơn với sự can thiệp của kỹ thuật đồ họa. Đây là một ưu thế
của công nghệ thực tại ảo.
Bề mặt vật trong suốt ánh sáng chiếu tới chia thành hai phần, phần
phản xạ, phần khúc xạ do vậy tạo ra hình ảnh vật như trong Hình sau:
46
Hình 3.2: Bề mặt vật thể trong suốt
Để thể hiện hình ảnh đẹp, nhấn một số đặc trưng người họa sĩ cần có
con mắt nghệ thuật và biểu diễn có tính sáng tạo, phần mềm thực tại ảo có
công cụ hỗ trợ để biểu diễn:
Ví dụ:
Hình 3.3: So sánh ảnh bị nhiễu sáng và đã chỉnh sửa
Hình ảnh thực tế bên phải bị nhòa do nhiễu của ánh sáng tán xạ, ảnh
chụp không khắc phục được so với tranh vẽ người họa sĩ thể hiện tốt hơn
nhưng vẫn đảm bảo sự trung thực cần thiết.
3.2.2. Phân tích chức năng người dùng
Hệ thống có các use case sau:
47
Người dùng là nhân viên bảo tàng: Thực hiện nhiệm vụ xây dựng
không gian trưng bày, thiết kế giá đỡ, sắp xếp, trang trí, và chăm sóc hiện vật;
với môi trường ảo nhân viên vận hành hệ thống hướng dẫn khách thăm quan
xem các thể hiện trình diễn vật thể của phần mềm; họ cũng có thể được hướng
dẫn bổ sung các thuộc tính cho vật thể như lời mô tả, chú dẫn, thuyết minh
thêm khi giới thiệu vật thể
Hình 3.4: Biểu đồ Use case
3.2.3. Phân tích các yêu cầu biểu diễn
Để biểu diễn bóng của vật thể ta thấy cần làm rõ các khía cạnh:
- Tác động của ánh sáng đến bề mặt vật: Khi quan sát vật dưới sự phản
xạ của ánh sáng từ vật khúc xạ qua thủy tinh thể của mắt và tạo ảnh tại điểm
vàng của võng mạc. Khi nhìn vật, bộ não phân tích và giải mã ra hình ảnh bề
mặt của vật để con người nhìn và phân biệt vật trong môi trường. Để mô tả bề
mặt của vật dưới tác động môi trường ta lại cần vận dụng những tri thức từ
48
vật lý, vật liệu, hóa họcđể suy diễn ra trạng thái thực trong tự nhiên dưới
tác động của ánh sáng, thời gian
- Khi thể hiện vật thể ở trạng thái động (quay quanh một trục) cần
nghiên cứu các điểm trọng tâm, các điểm biên, điểm tương tác để xác định vị
trí tương đối không gian của vật, bóng đổ của vật. Như vậy quá trình thiết kế
vật chuyển động trong không gian cần có nhiều thông tin đầu vào để tính toán
và đưa ra giá trị điểm ảnh để vẽ và điều khiển sự biến đổi (vị trí, màu sắc, bề
mặt, bóng đổ).
Sơ đồ phân tích
Input
Lựa chọn vật thể
Xác định vị trí vậ t
Xác định vị trí nguồn sáng
Thiết kế cấu trúc hình dạ ng
Xác định bề mặt biểu diễn
Tích hợp
Output
+ hệ thống
Hình 3.5: Sơ đồ phân tích
49
3.3 . Thiết kế các thuật toán
3.3.1.Thuật toán xác định hướng ánh sáng trong môi trường
Thuật toán này để tính toán hướng phản xạ của ánh sáng để quan sát vật
thể trong một phạm vi không gian xác định.
B1. Thu nhận dữ liệu hình ảnh từ môi trường
B2. Xác định vùng khối cầu có trong ảnh
B3. Xác định vùng chói sáng trong khối cầu
B4. Xây dựng pháp tuyến với khối cầu tại tâm của vùng chói sáng
B5. Xác định hướng của véc tơ phản xạ Vr
Hình 3.6: Mô hình thuật toán xác định hướng ánh sáng trong môi trường
Dựa vào mối quan hệ giữa khung nhìn và nguồn sáng trong Hình trên,
chúng tôi đề xuất một phương pháp xác định hướng ánh sáng trong phạm vi
xác định dựa trên quá trình phân tích tính chất phản xạ ánh sáng trên bề mặt
vật thể. Để xác định được hướng của nguồn sáng ta cần xác định hướng của
véc tơ phản xạ . Véc tơ phản xạ được tính dựa vào công thức:
50
B6. Xác định hướng nguồn sáng: Hướng nguồn sáng là hướng ngược lại
với hướng của véc tơ phản xạ Vr.
Từ ảnh thu nhận được ta sử dụng Hough Circle Transform (HCT) để xác
định được vị trí cũng như tâm và bán kính của hình cầu. Hình cầu xác định
được là (Bc(x,y);R)
3.3.2. Thuật toán tính toán tương tác giữa các vật thể khi xoay
Chất lượng của mô phỏng phụ thuộc vào quá trình tính toán tương tác
không gian, một phương pháp tích phân số hiệu quả được coi là yếu tố quyết
định của quá trình tính toán. Chúng tôi đề xuất phương pháp tích phân số hỗn
hợp nhằm tăng tốc độ tính toán. Thông thường trong một môi trường mô
phỏng bao gồm nhiều đối tượng di chuyển, kỹ thuật phát hiện vị trí dựa trên
giới hạn bao quanh các đối tượng được phân chia thành hai pha: Pha thứ nhất
nhanh chóng loại trừ các cặp đối tượng mà giữa chúng không thể xảy ra tương
tác, pha thứ hai thực hiện kiểm tra sự giao nhau giữa các cặp còn lại để xác
định tương tác
Từ cơ sở phân tích như trên, thuật toán tích phân số hỗn hợp sẽ được đề
xuất như sau:
Bước 1: Sử dụng phương pháp Euler khi bắt đầu mô phỏng phẫu thuật ảo.
Bước 2: Thực hiện pha thứ nhất dò tìm va chạm cho đến khi phát hiện
va chạm xảy ra và chuyển sang Bước 3.
Bước 3: Sử dụng phương pháp Runge-Kutta bậc 4 cho mô phỏng biến
dạng.
Bước 4: Khi có các dụng cụ tác động đến mô mềm thì sử dụng lại
phương pháp Euler.
Lặp lại từ Bước 1 đến Bước 4 cho đến khi hoàn thành toàn bộ quá trình
mô phỏng.
Sơ đồ khối của phương pháp tích phân số hỗn hợp được thể hiện
Các file đính kèm theo tài liệu này:
- luan_van_nghien_cuu_ky_thuat_tao_bong_be_mat_cua_vat_the_va.pdf