Tải bản đầy đủ (.pdf) (72 trang)

các kỹ thuật chạm nổi 3d và ứng dụng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.7 MB, 72 trang )


Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên



ĐẠI HỌC THÁI NGUYÊN
KHOA CÔNG NGHỆ THÔNG TIN




Vũ Duy Tuyên




CÁC KỸ THUẬT CHẠM NỔI 3D VÀ ỨNG DỤNG





LUẬN VĂN THẠC SĨ







Thái Nguyên – 2010























Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên



ĐẠI HỌC THÁI NGUYÊN
KHOA CÔNG NGHỆ THÔNG TIN




Vũ Duy Tuyên



CÁC KỸ THUẬT CHẠM NỔI 3D VÀ ỨNG DỤNG
Chuyên ngành: Khoa học máy tính
Mã số: 60 48 01
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC
PGS.TS. Đỗ Năng Toàn






























Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên


Thái Nguyên – 2010
LỜI CAM ĐOAN

Tôi, Vũ Duy Tuyên xin cam đoan toàn bộ nội dung bản luận văn này là
do tôi tự sưu tầm, tra cứu và sắp xếp cho phù hợp với nội dung yêu cầu của đề
tài. 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. 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 hoàn toàn chịu trách nhiệm.


Người Cam Đoan





Vũ Duy Tuyên










Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên






LỜI CÁM ƠN

Sau thời gian nghiên cứu, tìm hiểu và viết luận văn, giờ luận văn của
em đã hoàn thành. Lời đầu tiên em xin được chân thành cảm ơn sự giúp đỡ,
sự chỉ bảo và hướng dẫn nhiệt 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à
giáo viên hướng dẫn em trong suốt thời gian làm luận văn.
Em xin chân thành cảm ơn các thầy giáo, cô giáo, các anh, chị công tác
tại phòng Thực tại ảo – Viện Công nghệ thông tin, các thầy cô giáo công tác
tại Khoa công nghệ thông tin – Đại học Thái Nguyên, cùng tập thể các bạn
học viên lớp cao học Khóa 6 đã luôn giúp đỡ chia sẻ kinh nghiệm trong suốt
khóa học.

Xin chân thành cám ơn Ban lãnh đạo Ngân hàng Nông nghiệp và Phát
triển Nông thôn Việt Nam chi nhánh Hải Phòng cùng các bạn đồng nghiệp
trong phòng Điện Toán đã tạo điều kiện giúp đỡ để tôi hoàn thành được khóa
học .
Thái Nguyên, ngày 10 tháng 10 năm 2010

Học viên





Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên


Vũ Duy Tuyên

i

MỤC LỤC
Trang
DANH MỤC KÝ HIỆU, CÁC CHỮ VIẾT TẮT iii
DANH MỤC CÁC HÌNH VẼ iv
PHẦN MỞ ĐẦU 1
Chương 1: KHÁI QUÁT THỰC TẠI ẢO VÀ CHẠM NỔI 3D 2
1.1. Khái quát thực tại ảo 2
1.2. Ứng dụng cơ bản của thực tại ảo 4
1.2.1. Giáo dục và khoa học 4
1.2.2. Y học 5
1.2.3. Thiết kế xây dự

ng 7
1.2.5. Hàng không 8
1.2.4. Quân sự 9
1.2.6. Nghệ thuật 10
1.2.7. Điện ảnh 11
1.2.8. Game và giải trí 11
1.2.9. Hội thảo từ xa 11
1.3. Kỹ thuật chạm nổi 3D 13
Chương 2: MỘT SỐ KỸ THUẬT CHẠM NỔI 14
2.1. Kỹ thuật Bump mapping 14
2.1.1. Kỹ thuật Emboss bump mapping 16
2.1.2. Kỹ thuật Dot Product 3 17
2.1.3. Kỹ thuật Environment mapping 17
ii

2.2. Kỹ thuật Normal mapping 22
2.3. Kỹ thuật Displayment mapping 25
2.3.1. Không gian tiếp tuyến 30
2.3.2. Tính toán các bản đồ chiều cao: 33
2.3.3. Ánh xạ thay thế trên mỗi đỉnh 33
2.3.4. Ánh xạ thay thế trêm mỗi điểm ảnh 37
2.3.5. Ánh xạ thay thế trên mỗi điểm ảnh cùng với hàm khoảng cách 41
2.4. Kỹ thuật Parallax mapping 50
2.4.1. Parallax mapping 51
2.4.2. Steep parallax mapping: 54
2.4.3. Parallax mapping cùng với độ dốc thông tin: 55
Chương 3: CHƯƠNG TRÌNH THỬ NGHIỆM 58
3.1. Đặt vấn đề 58
3.2. Kỹ thuật chạm nổi ánh xạ thay thế sử dụng hàm khoảng cách 58
3.3. Một số hình ảnh kết quả của chương trình 59

PHẦN KẾT LUẬN 63
TÀI LIỆU THAM KHẢO 64

iii

DANH MỤC KÝ HIỆU, CÁC CHỮ VIẾT TẮT
Binormal Véc tơ nửa pháp tuyến
Bitangent Véc tơ nửa tiếp tuyến
BRDF
Hàm phân bố năng xuất phản xạ hai chiều (Bidirectional
Reflectance Distribution Funtion)
CPU Bộ xử lý trung tâm (Center Processing Unit)
3D
3 chiều (3Dimension)
FS
Tô bóng mảnh (Fragment shader)
GPU
Đơn vị xử lý đồ họa (Graphic Processor Unit)
Mipmap
Tập hợp nhóm các loại cỡ của mảng hình chất liệu
NURB
Là một kiểu củ
a Basis spline (Non-Uniform Rational B-
Splines)
PS
Tô bóng điểm ảnh (Pixel Shader)
VS
Tô bóng đỉnh (Vertex Shader)
Texel
Là đơn vị cơ bản của không gian kết cấu (Texture element –

texture pixel)










iv

DANH MỤC CÁC HÌNH VẼ
Hình 1.1. Hình ảnh của dự án nghiên cứu về tay của con người 5
Hình 1.2. Bên trái- Quả tim người, Bên phải- Mắt con người 6
Hình 1.3. Hình ảnh ứng dụng của thực tại ảo trong xây dựng 7
Hình 1.4. Ứng dụng của thực tại ảo trong huấn luyện quân sự 9
Hình 2.1. Bump mapping 13
Hình 2.2. Các ảnh kết cấu cho bản đồ khối 17
Hình 2.3. a- Environment map, b- Tính toán véc tơ phản chiếu 18
Hình 2.4. Ý tưở
ng cơ bản của displacement mapping 26
Hình 2.5. Không gian tiếp tuyến 28
Hình 2.6. Displacement mapping trên thiết bị tô bóng đỉnh 31
Hình 2.7. Ánh xạ thay thế trên mỗi điểm ảnh 34
Hình 2.8. Ray tracing của trường chiều cao 35
Hình 2.9. Một trường hợp khó khăn cho các thuật toán Displacement 39
Hình 2.10. Việc kết xuất văn bản được thay thế 39
Hình 2.11. Một ví dụ ánh xạ khoảng cách trong hai đơn vị độ dài 40

Hình 2.12. Sphere stracing 41
Hình 2.13. Displacement mapping cùng với vi
ệc vẽ hình cầu 44
Hình 2.14. Ánh xạ song song (Parallax mapping) 47
Hình 2.15. Ánh xạ song song cùng với offset limiting 48
Hình 2.16. Parallax mapping with slope information 50
Hình 3.1. Ảnh màu -ảnh chiều cao - ảnh pháp tuyến của quạt 54
Hình 3.2. Ảnh quạt của kỹ thuật chạm nổi 54
v

Hình 3.4. Ảnh màu - ảnh chiều cao - ảnh pháp tuyến của bức tường đá 55
Hình 3.5. Ảnh bức tường đá của kỹ thuật chạm nổi 55
Hình 3.6. Hình kết quả thay đổi độ sâu bump và số lần lặp 56
Hình 3.7. Hình kết quả khi thay đổi độ sâu về 0.50 56
Hình 3.8. Kết quả thay đổi lần lặp về 0 57
Hình 3.9. Kết quả khi thay đổi hướng ánh sáng 57
Hình 3.10. Ảnh màu - ảnh chi
ều cao - ảnh pháp tuyến của đoạn văn bản 58
Hình 3.11. Ảnh chữ của kỹ thuật chạm nổi 58
Hình 3.12. Kết quả giảm độ sâu về 0.30 của ảnh text 59


1

PHẦN MỞ ĐẦU
Ngày nay với sự phát triển như vũ bão của ngành công nghệ thông tin cũng
như ứng dụng rộng khắp của nó vào trong đời sống kinh tế xã hội của con người. Đi
liền với sự phát triển của ngành công nghệ thông tin là lĩnh vực đồ họa máy tính,
lĩnh vực này được rất nhiều nhà khoa học quan tâm nghiên cứu từ thế kỷ trước để
ứng dụ

ng vào thực tế.
Nghiên cứu các đối tượng ảnh 3D là một trong những cách mô phỏng thực tế
nhất các đối tượng trong thế giới thực. Các kỹ thuật xử lý ảnh 3D sẽ giúp cho việc
hiển thị, mô phỏng một cách tốt nhất thế giới bên ngoài trên máy tính. Một trong
các kỹ thuật xử lý ảnh 3D là kỹ thuật chạm nổi, kỹ thuật này cho phép làm nổi bật
các thành phần của hình ảnh giố
ng như thật. Cùng với việc ứng dụng rộng khắp của
đồ họa 3D đã thôi thúc tác giả tìm hiểu về các kỹ thuật đồ họa 3D. Do đó luận văn
tốt nghiệp nghiên cứu về “Một số kỹ thuật chạm nổi 3D và ứng dụng”. Luận văn
gồm các phần như sau: phần mở đầu, phần kết luận, phần nội dung. Phần nội dung
có 3 chương cụ thể như sau:
Chương 1: Khái quát thực tại ảo và kỹ thuật chạm nổi 3D
Phần này đề cập đến khái niệm thực tại ảo, so sánh thực tại ảo với một số
lĩnh vực khác, ứng dụng của thực tại ảo, kỹ thuật chạm nổi: Khái niệm và một số
vấn đề về kỹ thuật chạm nổi.
Chương 2: Các kỹ thuật chạm nổi
Tổng hợp một số các kỹ thuật chạm nổi: kỹ thuật tạo bề mặt sần, kỹ thuật
ánh xạ thay thế, kỹ thuật ánh xạ pháp tuyến, kỹ thuật ánh xạ song song.
Chương 3: Chương trình thử nghiệm
Giới thiệu bài toán kỹ thuật chạm nổi sử dụng phương pháp ánh xạ thay thế
dựa trên hàm khoảng cách, mộ
t số hình ảnh kết quả của chương trình.



2

Chương 1
KHÁI QUÁT THỰC TẠI ẢO VÀ CHẠM NỔI 3D
1.1. Khái quát thực tại ảo

Thực tại ảo mô phỏng môi trường không gian ba chiều trên máy tính, trong
môi trường mô phỏng đó con người có thể quan sát và thực hiện những thao tác mà
mình mong muốn. Với tất cả những gì có trong môi trường mô phỏng thông qua
thiết bị đầu vào với kết quả trả lại là những thay đổi của môi trường đó mà con
người có thể quan sát hay cảm nhậ
n được thông qua các thiết bị đầu ra.
Theo như định nghĩa trên có thể nhận ra các thành phần của thực tại ảo là:
môi trường không gian ba chiều, mô hình tạo trên máy tính, sự tương tác, các thiết
bị vào, ra. Thực tại ảo là một thế giới thực song lại ảo, vì một phần của thế giới thực
sẽ được tái tạo trên máy tính, thông qua các thiết bị đầu vào con người có thể chìm
đắm trong môi trường không gian ba chiều và cho phép con ngườ
i có khả năng
quan sát, tương tác với môi trường ảo đó. Những tương tác đó đều được chương
trình xử lý và thông qua thiết bị đầu ra sẽ đem lại cho con người cảm nhận về thay
đổi của môi trường ấy như trong thực tế và tất cả mọi thứ diễn ra trong không gian
ba chiều.
Chúng ta thấy rằng khái niệm trên là khái niệm khá rõ ràng, song đôi khi
chúng ta vẫn cảm thấy có sự mập mờ
giữa thực tại ảo với multimedia hay thực tại
ảo với game 3D hoặc thực tại ảo với television. Điều đó không có gì ngạc nhiên vì
thực tại ảo là một lĩnh vực hiện còn khá mới mẻ, nhưng giữa chúng có những điểm
khác biệt quan trọng.
Trong thế giới Multimedia mọi thứ chỉ là 2D còn trong thế giới Thực tại ảo
mọi thứ có thể mô phỏng 3D. Trong multimedia thì v
ấn đề đã được xếp đặt và lên
chương trình trước, thông tin được đóng gói với một kịch bản xác định và tương tác
của người sử dụng với các đối tượng chỉ là những tương tác có sẵn, người sử dụng
không thể thay đổi được bất cứ cái gì và không thể thêm cái gì vào đó được. Thực
tại ảo thì khác, tương tác trở lên tốt hơn và dễ dàng hơn, thậm chí mộ
t số hệ thống

còn cho phép thêm vào và kết hợp với các tương tác, với âm thanh, hình ảnh, phần
3

mềm và phần cứng trợ giúp làm cho con người có thể đắm mình trong thế giới thực
tại. Khi nói đến truyền thanh hay truyền hình ai trong chúng ta cũng nghĩ tới những
chương trình được tổ chức một cách công phu nhằm hấp dẫn những người theo dõi
chương trình và cố gắng làm cho người theo dõi chương trình cảm thấy chương
trình càng hấp dẫn, càng thu hút càng tốt.
Như vậy chương trình truyền thanh hay truyền hình chỉ nhằm hướng ng
ười ta
theo dõi chương trình chứ không hướng người ta tham gia vào các chương trình.
Còn trong thực tại ảo thì hoàn toàn khác, không những chỉ hướng người sử dụng
theo dõi chương trình mà còn làm cho người xem tham gia vào hệ thống một cách
tự nhiên, thoải mái, thám hiểm hấp dẫn trong cái thế giới ảo đó. Trong thực tại ảo có
thể thực hiện tương tác như trong thế giới thực và cũng cảm nhận sự tương tác
ngược trở lạ
i như trong thế giới thực. Thỉnh thoảng chúng ta có xem một số film
khoa học viễn tưởng, chúng ta thấy được những viễn cảnh hoàn toàn không có thực
trên thế giới này. Đó là sản phẩm với trí tưởng tượng phong phú của con người và
chúng được mô hình hoá trên máy vi tính và được đưa vào phim. Như vậy chúng ta
có thể thấy được rằng sự khác biệt ở đây sẽ càng khó phân biệt hơn khi chúng ta
ứng dụng thực tại ảo vào Television. Th
ực tại ảo bao gồm Game3D vì nguyên nhân
đầu tiên mà thực tại ảo ra đời là nhằm phục vụ giải trí đặc biệt là Game 3D và Game
3D chỉ nằm trong lĩnh vực giải trí còn thực tại ảo thì có thể bao trùm mọi lĩnh vực
của đời sống xã hội.
1.2. Ứng dụng cơ bản của thực tại ảo
Tại hội trợ triển lãm thương mại năm 1989 hai công ty VPL và Autodesk đã
giới thi
ệu các thiết bị cho việc giao tiếp với thế giới ảo. Đây là bước đi đầu tiên cho

việc khám phá rộng rãi các lĩnh vực ứng dụng mới của thực tại ảo và kỹ thuật chạm
nổi. Những lĩnh vực đang ứng dụng thực tại ảo và chạm nổi một cách mạnh mẽ hiện
nay là: Giáo dục và khoa học, Y học, Công nghệ thông tin, Hàng không, Xây dựng,
Giả
i trí, Quân sự, Điện ảnh.


4

1.2.1. Giáo dục và khoa học
Giáo dục con người là vấn đề hàng đầu của mỗi quốc gia. Tìm hiểu, nghiên
cứu nhằm đưa ra phương pháp giáo dục hiệu quả đã khó, song còn có những vấn đề
còn khó khăn hơn đó là làm sao kích thích được niềm say mê học tập, nghiên cứu
của con người và tính tự giác, khả năng tư duy và tưởng tượng của mỗi con người
và làm sao để cung cấp môi trường học tập nghiên cứu tố
t nhất nhằm phát huy hết
những khả năng của con người.
Theo như cách giáo dục truyền thống nhiều khi chúng ta không thể cung cấp
được môi trường nghiên cứu học tập tốt, không khơi dậy được niềm đam mê, hứng
thú hay không thể phát huy hết được khả năng tưởng tượng và tư duy của con người
làm cho hiệu quả giáo dục không cao. Những chương trình nhằm rèn luyện tư duy,
những chương trình rèn luyệ
n khả năng tưởng tượng, những chương trình cung cấp
mô hình thực nghiệm, những chương trình kích thích trí tò mò là chưa nhiều hay có
thể là chưa nhiều chương trình hiệu quả. Nguyên nhân là các chương trình được xây
dựng chưa có khả năng phát huy hết được sự cảm nhận của con người, chưa gây
được ấn tượng sâu sắc về vấn đề cần truyền đạt cho đối tượng cần truyền đạt, môi
tr
ường truyền đạt không gây được trí tò mò. Hiện nay có một xu hướng mới trong
việc ứng dụng Công nghệ thông tin trong giáo dục mà rất được quan tâm nghiên

cứu và phát triển đó là xây dựng mô hình thực tại ảo trên máy vi tính nhằm cung
cấp các môi trường học tập và nghiên cứu. Những mô hình được xây dựng ở đây
phải xây dựng làm sao để chuyển tải được thực tế vào môi trường mô phỏng đó,
cung cấp khả năng tương tác c
ủa con người với môi trường mô phỏng đó, có khả
năng kích thích cao với người tham gia. Qua những lần thực nghiệm này thì chúng
ta sẽ ngày càng đạt được hiệu quả cao hơn trong giảng dạy.
1.2.2. Y học
Khi xã hội càng phát triển thì vấn đề sức khoẻ con người càng được quan
tâm hơn. Càng ngày người ta càng cố gắng tìm ra các phương pháp, các cách thức
chữa trị bệnh cho con người ngày một tốt hơn. Hiện nay Công nghệ thông tin đang
phát tri
ển và những ứng dụng của nó vào thực tế trở nên phổ biến, đồng thời những
5

thành quả to lớn của nó đem lại thì không ai có thể phủ nhận được, một trong các
lĩnh vực mà ứng dụng Công nghệ thông tin một cách hiệu quả hiện nay là y học, cụ
thể là đã có một số phần mềm hỗ trợ cho việc khám chữa bệnh: Phần mềm quản lý
bệnh nhân, phần mềm nội soi, phần mềm mô phỏng các bộ phận cơ thể con người
giúp cho việc
điều trị bệnh. Ví dụ như dự án nghiên cứu của Châu Âu vào tháng 11
năm 1993, dự án này cho phép xây dựng lại mô hình cánh tay của con người trong
không gian 3D từ những dữ liệu hình ảnh trong y học và mô phỏng tất cả sự thay
đổi có thể có của các bộ phận như sự co giãn cơ. Dự án nghiên cứu nhằm đưa thực
tại ảo vào việc chữa trị bệnh cho con người. Bằng cách xây dựng một chương trình
mà cho phép các bác sĩ trên khắp thế giới có thể cùng tham gia quan sát, thảo luận
để đưa ra phương pháp chữa trị hiệu quả nhất. Trong y học con người còn gặp rất
nhiều những vấn đề mà nếu không có thực tại ảo thì không dễ tìm ra phương pháp
giải quyết. Ví dụ như việc cung cấp môi trường thực hành cho việc nghiên cứu và
học tập, đây cũng là vấn đề bức xúc và gặp nhiều khó khă

n hiện nay, chúng ta thiếu
các mẫu để thực tập phẫu thuật hay môi trường thực để quan sát. Đôi khi vì khả
năng con người ví dụ như tầm quan sát của mắt chúng ta không thể quan sát được
mạch máu của chúng ta như thế nào hay cấu trúc lược đồ gen của chúng ta ra sao
hay trong phẫu thuật nhiều khi không thể thực hiện được do đối tượng thực hiện
không có điều kiện sức khoẻ để thự
c hiện ca phẫu thuật lớn. Dưới đây là một số
hình ảnh minh hoạ về việc nghiên cứu và ứng dụng thực tại ảo trong y học:

Hình 1.1. Hình ảnh của dự án nghiên cứu về tay của con người
Đây là dự án nghiên cứu của Châu Âu vào tháng 11 năm 1993, dự án này
cho phép xây dựng lại mô hình cánh tay của con người trong không gian 3D từ
6

những dữ liệu hình ảnh trong y học và mô phỏng tất cả sự thay đổi có thể có của các
bộ phận như sự co giãn cơ (theo địa chỉ: ) .

Hình 1.2. Bên trái- Quả tim người, Bên phải- Mắt con người
Những vấn đề trên được giải quyết một cách hiệu quả khi có ứng dụng thực
tại ảo. Chỉ bằng cách xây dựng các mô hình thực tại ảo cần thiết cho các đối tượng
là chúng ta đã có ngay môi trường quan sát, nghiên cứu thực tập tốt thậm chí có thể
nói là tốt hơn thực tế.
1.2.3. Thiết kế xây dựng
Những chương trình đồ
họa mạnh nhất hiện nay chủ yếu được phục vụ vào
các lĩnh vực thiết kế và xây dựng như AUCAD, AUTODEST, 3DMAX,
SHAPRE,… Những chương trình này đã giúp cho những nhà thiết kế xây dựng
giảm được rất nhiều chi phí về thời gian và công sức thiết kế. Song hầu hết các
chương trình này mới chỉ dừng lại ở mức các bản vẽ chứ chưa thực sự tạo ra cho
ngườ

i ta cảm giác hay một cái nhìn về những công trình mà họ thiết kế trên thực tế
nó sẽ như thế nào. Thực tại ảo tạo ra cho người ta cảm giác chìm đắm trong một
không gian như trên thực tế mà đã được xây dựng trên máy vi tính và sẽ giúp cho
chúng ta có thể có một cái nhìn chi tiết về công trình đã được thiết kế.
7



Hình 1.3. Hình ảnh ứng dụng của thực tại ảo trong xây dựng
1.2.5. Hàng không
Thời gian, nguồn đầu tư là vấn đề sống còn của tất cả các công ty tham gia
hoạt động sản xuất kinh doanh đặc biệt là những ngành đòi hỏi phải có nguồn vốn
lớn mà thời gian thu hồi vốn lâu và sức cạnh tranh cao như ngành hàng không vũ
trụ. Chúng ta không thể đầu tư một chiếc tàu vũ trụ để phóng th
ử nghiệm vào không
gian, chúng ta không thể giao một chiếc máy bay cho một viên phi công lần đầu tiên
bước lên máy bay mà chưa qua huấn luyện vì chi phí cho chiếc máy bay không phải
là nhỏ và quan trọng hơn nữa là vấn đề an toàn tính mạng con người. Trên thực tế
người ta làm thế nào để giải quyết vấn đề đó, thực tế khi mà chưa có ứng dụng của
Công nghệ thông tin thì người ta buộc tất cả những học viên phải trau dồi lý thuyết
thật nhuần nhuyễn trước khi bước lên máy bay nhằm giảm thiểu những thiệt hại hay
nguy hiểm. Tuy nhiên cách giải quyết này có nhược điểm là đòi hỏi quá nhiều thời
gian và kinh phí đào tạo. Một vài năm khi Công nghệ thông tin phát triển và các
ứng dụng của nó vào lĩnh vực này càng trở nên mạnh mẽ đặc biệt là trong vấn đề trợ
giúp đào tạo phi công, người ta xây dựng rất nhiều chương trình mô phỏng cho phi
8

công tập luyện kết hợp với các thiết bị phần cứng để tạo ra một môi trường làm cho
con người tưởng như ở trên một chiếc máy bay thật và mọi thứ diễn ra giống như
thực tế. Một chương trình máy tính tạo ra không gian 3D kết hợp với thiết bị phần

cứng cho phép người phi công thực hiện những chuyến bay đến các sân bay đã
được xây dựng sẵn với các tình huố
ng khác nhau nhằm nâng cao kỹ năng xử lý tình
huống như trong thực tế cho phi công với cách này người ta đã giảm thiểu được thời
gian đào tạo, chi phí đào tạo và nâng cao tính toán an toàn của mỗi chuyến bay.
1.2.4. Quân sự
Vấn đề môi trường thực tế, điều kiện kinh tế, kỹ thuật, vấn đề an toàn tính
mạng con người là những vấn đề khó khăn hàng đầu của các quốc gia về quân sự.
M
ột trong lý do đầu tiên mà thực tại ảo ra đời là nhằm phục vụ cho quân sự. Chắc
hẳn ai cũng biết rằng không phải là lúc nào cũng có chiến tranh, song khi có chiến
tranh không phải là lúc chúng ta chuẩn bị lực lượng, vậy thì lấy đâu ra môi trường
thực tế để rèn luyện, chuẩn bị lực lượng hay trên thực tế có thể tạo ra môi trường
tập luyện thực sự. Do điều kiện kinh tế
kỹ thuật không cho phép hơn nữa việc tập
luyện ấy quá nguy hiểm tới tính mạng cho con người.
Như vậy vấn đề ở đây là làm sao tạo ra được môi trường tập luyện như trên
thực tế mà lại không quá tốn kém hay không nguy hiểm đến tính mạng con người
trong khi đó hiệu quả tập luyện lại tốt như thực tế. Người ta đã giải quyết vấn đề
trên một cách thực sự hiệu quả khi ứng dụng thực tại ảo. Điều này có thể thấy rõ
như ở một số nước có quân sự mạnh như Mỹ, Nga, Trung Quốc,…Người ta đã xây
dựng các hệ thống mô phỏng phục vụ cho việc tập luyện của bộ binh hay những hệ
thống mô phỏng an ninh, mô phỏng trận địa phục vụ cho việc nghiên cứu, tậ
p luyện
nhằm tìm ra các biện pháp phòng thủ hay chiến đấu một cách hiệu quả và nâng cao
chất lượng của quân sự. Khi ứng dụng thực tại ảo vào trong quân sự thì hiệu quả
kinh tế mà nó mang lại là thực sự to lớn, người ta sẽ giảm được một lượng lớn kinh
phí phục vụ cho việc tập luyện hay thực hiện được những vấn đề mà trên thực tế
khó có thể thự
c hiện được hay những vấn đề trên thực tế phải áp dụng những quy

tắc an toàn nghiêm ngặt song vẫn có mối nguy hiểm lớn đến tính mạng và tài sản
9

của con người. Hình ảnh sau là ảnh minh họa của chương trình huấn luyện quân đội
mới của hãng Cubic cho phép người lính có thể tự do di chuyển trong một môi
trường thực tế ảo 360
o
. Thông qua một chiếc kính đeo trước mắt, họ có thể nhìn và
tương tác với cảnh vật xung quanh trong môi trường ảo đó để di chuyển và tập
luyện chứ không bị bó buộc phải đứng một chỗ như các hệ thống huấn luyện ảo như
trước đây, thường phải thông qua các máy chiếu hoặc tập luyện trên các màn hình
kích thước lớn

Hình 1.4. Ứng dụng của thực tại ảo trong huấn luyện quân sự
1.2.6. Nghệ thuật
Một dự án đang thiết kế và xây dựng Viện bảo tàng nghệ thuật ảo (The
Networked Virtual Art Museum), dự án này hiện tại đang kết hợp thực tại ảo với
viễn thông. Qua dự án này, người ta cũng đang đầu tư nhiều lĩnh vực hoặc đầu tư
thêm vào lĩnh vực khác nhau nh
ư là phần mềm xây dựng thế giới, nghệ thuật ảo và
kiến trúc ảo, viễn thông, lập trình máy tính, trí tuệ nhân tạo, giao thức truyền thông.
Việc xây dựng bảo tàng ảo này cần đến nhiều sự cộng tác của các chuyên gia khác
nhau như là nhà nghệ thuật, nhà kiến trúc, chuyên gia xây dựng công cụ trợ giúp
máy tính, lập trình viên, nhà soạn nhạc, chuyên viên viễn thông để cùng phối hợp
với đội thiết kế nhằm giải quyết v
ấn đề kết nối trong môi trường nhúng. Sự cài đặt
ban đầu cho viện ảo này là toà nhà Fun House. Hay ở Việt Nam để kỷ niệm 1000
năm Thăng Long Hà Nội, đã có dự án phục dựng lại toàn bộ kinh thành Thăng Long
bằng môi trường 3D,
10


1.2.7. Điện ảnh
Như chúng ta đã biết hiện nay điện ảnh là một lĩnh vực đang lên ngôi, chắc
hẳn ai trong chúng ta cũng đã từng xem phim và cũng đã từng thưởng thức những
cảnh thú vị trong phim do các diễn viên, nhân vật trong phim thể hiện. Và chúng ta
chỉ có thể nghĩ rằng những điều đó chỉ có thể có trong phim chứ không có trên thực
tế. Đúng vậy những phim đượ
c coi là hay nhất, được ưa chuộng nhất hiện nay là
những phim có những cảnh ngoạn mục, hoành tráng. Một vài những năm gần đây
những phim đó đó ứng dụng thực tại ảo và những phương pháp xử lý đồ họa mạnh
tạo ra những hiệu ứng, những cảnh mà trên thực tế không thể thực hiện được.
1.2.8. Game và giải trí
Lý do đầu tiên mà thực tại ảo ra đờ
i là phục vụ cho giải trí, như chúng ta đã
thấy lịch sử ra đời của thực tại ảo là nhằm phục vụ cho giải trí, thực hiện việc mô
phỏng các mô hình 3D, cung cấp các dịch vụ phục vụ tương tác của con người trong
môi trường ảo với hình ảnh tuyệt vời kết hợp với âm thanh nổi, các thiết bị vào ra
làm cho con người ở trong môi trường ảo mà như là ở trong môi trường th
ật. Thậm
chí còn hấp dẫn hơn nhiều bởi trong môi trường đó con người có thể thực hiện
những điều mà trên thực tế họ không thể thực hiện được. Với khả năng kết hợp với
các thiết bị vào ra, các hiệu ứng đồ họa chỉ có thể thấy được trên máy tính đã làm
cho thực tại ảo nhanh chóng trở thành một ứng dụng không thể thiế
u trong Game và
trong giải trí với những trò Game giải trí 3D làm say đắm con người.
1.2.9. Hội thảo từ xa
Các công việc được trao đổi giữa những người ở các nơi khác nhau bằng
cách chia sẻ thông tin thông qua mạng. Hội thảo từ xa là một ứng dụng của mục
đích này. Sự cảm nhận không gian và sử dụng không gian cho việc gặp gỡ và trao
đổi với nhau trong môi trường ba chiều có đặc điểm: Kích thích mạnh mẽ người

tham gia trong hộ
i thảo, Âm thanh vẫn giữ được tự nhiên, Có được các thao tác
phối hợp như trong thế giới thực.
Vì hội thảo ảo đóng một vai trò quan trọng trong viễn thông nên có nhiều
nhà nghiên cứu tập trung vào các vấn đề trong công việc truyền thông và công việc
11

có tính chất phối hợp với nhau. Lấy một ví dụ minh hoạ cho vấn đề này: Các thành
viên của nhóm Human Tele-Group trong khoa nghiên cứu về điều kiện và kết quả
làm việc để cải tiến công việc hiệu quả hơn của trường đại học Twente, Hà Lan đã
thiết kế và cài đặt một hệ thống hội thảo nhiều bên từ xa. Thành phần của hệ thống
này là phòng họp ảo ba chiề
u mà ở đó mọi người tham gia nhìn thấy nhau qua hình
ảnh, hình ảnh này được đưa lên bề mặt ba chiều, bề mặt này quay theo hướng nhìn
của người tham dự. Các khe, đốm sáng trên bàn hoặc trên tài liệu ở trên bàn cho
thấy những người khác đang làm việc. Khi đó trong thực tế thì những người tham
dự là đang ở nhà riêng của họ ngồi bên cạnh máy tính cùng với một máy quay gọi là
Eyegaze, thiết bị này gắn với hệ thống theo dõi m
ắt. Hệ thống này được cài đặt dựa
trên VRML 2.0 và thư viện Java.
Như vậy thực tại ảo có ứng dụng trong hầu hết các lĩnh vực của đời sống.
Qua đó cũng nhận thấy được ý nghĩa to lớn của việc ứng dụng thực tại ảo, bởi
những vấn đề khó khăn mà nếu không có thực tại ảo thì có thể nói là khó lòng giải
quyết hay n
ếu có giải quyết được thì hiệu quả cũng không cao và chi phí sẽ rất tốn
kém. Còn khi ứng dụng thực tại ảo vào thì những vấn đề đó trở nên đơn giản hơn và
hiệu quả mang lại thật sự to lớn kể cả vật chất lẫn tinh thần. Thực tại ảo cung cấp
một giao diện nhiều chiều giữa máy và con người, chính nhờ điều này và kết h
ợp
với các thiết bị khác nhau cho nên thực tại ảo tạo ra những ứng dụng mà ở đó con

người có một cách để xây dựng, thao tác dữ liệu phức tạp một cách tự nhiên và thực
tại ảo được sử dụng để mô phỏng thế giới thực trong nhiều ứng dụng khác nhau.
Tuy nhiên để có được các mô hình thực tại ảo như trên thì cần phải có một ngôn
ngữ xây dựng chúng, ch
ương tiếp theo sẽ tìm hiểu ngôn ngữ VRML để xây dựng
mô hình thực tại ảo.
1.3. Kỹ thuật chạm nổi 3D
Lịch sử phát triển của các kỹ thuật chạm nổi gắn liền với sự phát triển của
các kỹ thuật đồ họa 3D. Sự ra đời của kỹ thuật chạm nổi bắt đầu từ những năm 70
của thế kỷ trước. N
ăm 1978 J.Blimn đã trình bày kỹ thuật chạm nổi đầu tiên, sau đó
rất nhiều các nhà khoa học trên thế giới đã phát minh cải tiến các kỹ thuật chạm nổi
12

nhằm từng bước cho các ảnh tốt hơn để gắn các kỹ thuật này vào trong các chip đồ
họa và đưa các kỹ thuật này ứng dụng phổ biến trên thực tế.
Để thực hiện chạm nổi trên ảnh 3D quả là rất khó bởi vậy chúng ta phải sử
dụng ảnh 2D để làm giả 3D. Sự khác nhau giữa Displacement mapping (còn được
gọi là bump mapping) và sự giả mạo (hay bump mapping 2D) là giả bump mapping
chỉ xáo trộn các bề m
ặt chuẩn thay thế bởi hình học. Sự khác nhau này có thể xem
trong hình bóng hay các hình chiếu. Trong bump mapping thực sự, các điểm nhấp
nhô là được áp dụng cho hình học, làm ảnh hưởng tới một điểm nhấp nhô hình
bóng. Giả bump mapping là được tính toán một cách hiệu quả và có thể được thực
hiện trong thời gian thực bởi card 3D, trong khi các bump mapping thật thường
được nhận cho off-line (không phải thời gian thực) các ảnh được dõi quang tia (ray-
traced images). Cho mục đích đạt đượ
c thời gian thực, bump mapping thường đề
cập đến một pass (pass là một quá trình từ khi bắt đầu tới khi kết thúc để sinh ra một
khung) hoặc là nhiều pass (multi-pass) và có thể được thực thi như là nhiều pass

(thường là ba hoặc bốn) để giảm số lượng tính toán lượng giác được yêu cầu.



13

Chương 2
MỘT SỐ KỸ THUẬT CHẠM NỔI

2.1. Kỹ thuật Bump mapping







Hình 2.1. Bump mapping
Là một phương pháp tái tạo hiệu ứng nhấp nhô, lổn nhổn của các bề mặt trên
phạm vi nhỏ. Kỹ thuật chạm nổi là một kỹ thuật đồ họa máy tính, nơi mỗi một điểm
ảnh, sự xáo trộn lên bề mặt pháp tuyến của đối t
ượng được lấy lại tìm trong ánh xạ
kết cấu (texture map) và được áp dụng trước khi việc tính toán sự chiếu sáng được
thực hiện. Kết quả là rất tốt, được chi tiết trong việc biểu diễn bề mặt hoàn toàn
giống với chi tiết vốn có trong thế giới tự nhiên. Ánh xạ pháp tuyến và ánh xạ song
song (Normal và parallax mapping) là những kỹ thuật thường được sử dụng để tạo
các nhấp nhô nhỏ (bumps), s
ử dụng các kỹ thuật mới để tạo bump mapping, việc sử
dụng tỷ lệ mức xám đã lỗi thời. Sự khác nhau giữa displacemen mapping và bump
mapping là hiển nhiên trong các ảnh ví dụ; trong bump mapping một thành phần

bình thường được xáo trộn, không ảnh hưởng đến chính hình học của nó. Các phần
đầu này tạo ra các vật bên trong hình bóng của đối tượng (một khối cầu vẫn có vòng
tròn bao quanh bóng).
Bump mapping là một kỹ thuật đồ họa máy tính để tái t
ạo bề mặt nhìn hiện
thực hơn bởi mô hình tương tác của một bề mặt kết cấu nhấp nhô cùng với ánh sáng
trong môi trường. Bump mapping thực hiện điều này bằng cách thay đổi độ sáng
của các điểm ảnh trên bề mặt tương ứng với độ cao của bản đồ (height map) điều
h
N
Normal
T,B
Bề mặt phẳng
Đèn
Normal
Quan sát
Bề mặt phẳng
14

này là đặc biệt cho mỗi bề măt. Khi nhận lại một cảnh 3D, độ sáng và màu của các
điểm ảnh được phụ thuộc vào sự tương tác của mô hình 3D cùng với ánh sáng trong
cảnh. Sau đó nó được phụ thuộc vào đối tượng hữu hình, lượng giác được sử dụng
để tính toán pháp tuyến bề mặt hình học (geometric’ suface normal) của đối tượng,
được định nghĩa như là một vector tại mỗi vị trí củ
a điểm ảnh trên đối tượng. Bề
mặt hình học thường được định nghĩa đối tượng nào tương tác mạnh mẽ cùng với
ánh sáng tới từ việc sử dụng phương pháp Phong shading hoặc thuật toán ánh sáng
tương tự. Ánh sáng đi vuông góc tương tác lên bề mặt một cách mạnh mẽ hơn là
ánh sáng song song tác động lên bề mặt. Sau khi sự tính toán hình học ban đầu được
thực hiện, một kết cấ

u được tô màu thường áp dụng cho mô hình để tạo ra đối tượng
xuất hiện một cách hiện thực hơn. Sau đó một sự tính toán được thực hiện cho mỗi
điểm ảnh trên bề mặt của đối tượng:
- Tìm các vị trí trên bản đồ chiều cao tương ứng với vị trí trên bề mặt.
- Tính toán pháp tuyến bề mặt của bản đồ chiều cao (heightmap).
- Thêm vào pháp tuyến bề mặt t
ừ bước 2 với pháp tuyến bề mặt hình học để
pháp tuyến chỉ trong một hướng mới.
- Tính toán sự tương tác của bề mặt nhấp nhô mới cùng với các ánh sáng
trong cảnh đang sử dụng. ví dụ Phong shading.
- Kết quả là một bề mặt xuất hiện để có chiều sâu thực sự. Thuật toán bảo
đảm rằng bề mặt xuất hiện thay đổi như là các ánh sáng trong cảnh di chuyể
n vòng
quanh. Kỹ thuật ánh xạ pháp tuyến (Normal mapping) thường được sử dụng trong
kỹ thuật bump mapping nhưng kỹ thuật này có thể thay bằng các kỹ thuật khác như
là kỹ thuật ánh xạ song song (Parallax mapping).
Đây là một phương pháp mà tại đó các ảnh phẳng của ánh xạ kết cấu (texture
map) sẽ được thay đổi để tạo ra một ấn tượng của việc không phẳng (non-smooth)
nhưng không thay đổi hình dạng vật lý c
ủa bề mặt. Bump mapping đang trở nên
phổ biến trong các game 3D bởi nó có thể được sử dụng để thêm các chi tiết trong
phạm vi nhỏ (small scale detail) như là các nếp nhăn, vết xước, mà không cần
thêm nhiều đa giác. Nó làm điều này bằng cách sử dụng ánh xạ kết cấu khác
15

(texture map) để thay đổi độ sáng của điểm ảnh trong kết cấu chính trên bề mặt.
Bump mapping có thể được xem như là một phiên bản đơn giản nhất của
displacement mapping. Kỹ thuật này được thực hiện trong phần cứng của đồ họa
thậm chí trước cả sự phổ biến của lập trình GPUs[PAC97, Kil00, BERW97]. Nếu
bề mặt không đồng đều có các nhấp nhô nhỏ thì có thể được ước tính nh

ư là hoàn
toàn phẳng. Trong trường hợp bề mặt phẳng, điểm nhìn thấy được xấp xỉ bằng với
điểm được xử lý. Tuy nhiên, để hình dung các nhấp nhô nhỏ, nó là cần thiết để mô
phỏng các hiệu ứng ánh sáng ảnh hưởng như thế nào lên chúng. Cách đơn giản để
tính toán các pháp tuyến được xáo trộn cho mỗi điểm ảnh và sử dụng các pháp
tuyến này để thực hiện việ
c chiếu sáng [6].
2.1.1. Kỹ thuật Emboss bump mapping
Đây là kỹ thuật sử dụng Texture map để đưa ra hiệu ứng chạm nổi mà không
yêu cầu sự nhận lại của người sử dụng. Đây là thuật toán multi-pass là một sự mở
rộng và chắt lọc của texture embossing. Đây là tiến trình sao lại kết cấu ảnh đầu
tiên, thay đổi toàn bộ nó để nhận được số lượng nhấp nhô, các điểm t
ới bên dưới,
cắt ra để phù hợp với hình dáng từ kết cấu trên đầu và trộn lẫn hai kết cấu vào thành
một. Đây được gọi là 2 pass chạm nổi bóng bởi vì nó yêu cầu hai kết cấu. Nó thực
hiện một cách đơn giản và không có yêu cầu về phần cứng, và do đó được giới hạn
bởi tốc độ của CPU. Tuy nhiên, nó chỉ ảnh hưởng bởi ánh sáng khuếch tán và ảo
ảnh đượ
c phá vỡ phụ thuộc vào góc của ánh sáng. Bump mapping còn đươc gọi là
height map, nó là một phiên bản greysacle đơn giản của kết cấu để được chạm nổi,
nhờ đó các giá trị texel được sử dụng để thay thế màu của các điểm ảnh ban đầu.
Height map là được kết xuất 2 lần, cùng với lần thứ hai được di chuyển nhẹ. Khi 2
bản đồ được kết hợp cùng nhau, thì kết quả của bump map m
ới chính là sự khác
biệt giữa 2 bản đồ. Điều này sau đó nhân với kết cấu cơ bản được yêu cầu.
2.1.2. Kỹ thuật Dot Product 3
Bump map được gọi là normal map, kết cấu này chứa các giá trị thay thế các
pháp tuyến bề mặt của các điểm ảnh ban đầu. Một pháp tuyến bề mặt giống như
một mũi tên chỉ theo hướng tới các bề mặt đối diện, nh
ư là các góc xa từ một nguồn

×