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

Mô phỏng chất liệu trong thực tại ảo và ứng dụng với chất liệu lông & tóc

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 (2.56 MB, 69 trang )


- 1 -
LỜI CẢM ƠN

Trong quá trình thực hiện đồ án tốt nghiệp này, em luôn nhận được sự
hướng dẫn nhiệt tình của thầy giáo, thạc sỹ: Nguyễn Văn Huân, công tác tại khoa
công nghệ thông tin thuộc Đại học Thái Nguyên, là cán bộ trực tiếp hướng dẫn
em thực hiện đồ án này. Em xin chân thành cảm ơn thầy !
Em chân thành cảm ơn các thầy cô giáo trong khoa công nghệ thông tin, đã
dạy dỗ, động viên em trong suốt 5 năm qua. Giúp em có thêm những kiến thức
để hoàn thành đồ án tốt nghiệp này. Em xin chân thành cảm ơn các thầy cô !
Tôi xin chân thành cảm ơn các anh, các chị và các bạn sinh viên đại học chính
quy khóa II - Khoa công nghệ thông tin thuộc Đạ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 và làm việc
trong suốt khoá học.




Thái Nguyên, ngày 30 tháng 4 năm 2008
Nguyễn Văn Tài












- 2 -
MỤC LỤC

LỜI CẢM ƠN..............................................................................................1
LỜI CAM ĐOAN ....................................... Error! Bookmark not defined.
MỞ ĐẦU.....................................................................................................4
CHƯƠNG I : THỰC TẠI ẢO VÀ CHẤT LIỆU TRONG THỰC TẠI ẢO..5
1.1. Thực tại ảo và ứng dụng....................................................................5
1.1.1. Khái niệm về thực tại ảo .............................................................5
1.1.2. Các lĩnh vực ứng dụng của thực tại ảo .........................................5
1.2. Mô phỏng chất liệu trong thực tại ảo................................................10
1.2.1. Tổng quan về mô phỏng chất liệu ..............................................10
1.2.2. Mô hình mô phỏng chất liệu tóc.................................................14
1.3. Chức năng.......................................................................................17
CHƯƠNG II : MÔ PHỎNG CHẤT LIỆU LÔNG, TÓC TRONG THỰC
TẠI ẢO.............................................................................................................21
2. 1. Mô phỏng tóc ở mức độ chi tiết ......................................................21
2.1.1. Những sợi tóc riêng lẻ ...............................................................22
2.1.2. Miếng tóc ..................................................................................29
2.1.3. Bó tóc........................................................................................30
2.2. Nhóm và chia nhỏ nhóm ..................................................................33
2.2.1 Xây dựng mô hình phân cấp tóc..................................................33
2.2.2. Chia nhỏ mảnh và bó .................................................................34
2.2.3. Chia nhỏ những nhóm sợi..........................................................35
2.2.4. Hợp nhất ngầm định cho mô phỏng động...................................36
2.2.5. Khả năng chia nhỏ của tóc........................................................38

- 3 -
2.2.6. Khả năng hòa trộn.....................................................................39

2.3.1. Tương tác giữa tóc với tóc ........................................................41
2.3.2. Tương tác giữa tóc với vật thể khác ...........................................42
2.4. Phát hiện va chạm............................................................................43
2.5. Việc thúc đẩy cho hệ thống khung kép.............................................51
2.6. Thiết lập bộ khung kép ....................................................................52
CHƯƠNG III : XÂY DỰNG CHƯƠNG TRÌNH ỨNG DỤNG.................54
3.1. Giới thiệu một số mô hình tóc ..........................................................54
3.2. Xây dựng chương trình ứng dụng ....................................................57
3.2.1. Chương trình mô phỏng chất liệu lông.......................................57
3.2.2. Chương trình mô phỏng chất liệu tóc.........................................61
KẾT LUẬN ...............................................................................................68
TÀI LIỆU THAM KHẢO..........................................................................69














- 4 -
MỞ ĐẦU

Trong thời đại hiện nay với sự phát triển của các ngành khoa học kĩ thuật,

đặc biệt là sự phát triển của công nghệ thông tin và ứng dụng của nó trong các
ngành khác nhau. Chẳng hạn như trong ngành Điện ảnh, để xây dựng được
những bộ phim hấp dẫn người xem thì cần phải tạo ra những cảnh quay ngoạn
mục, hay tạo ra những nhân vật có một sức mạnh huyền bí. Do đó, muốn tạo
được những nhân vật như vậy thì chúng ta phải xây dựng những nhân vật đó
trong môi trường thực tại ảo và lập trình cho chúng hoạt động. Một trong những
nhân tố ảnh hưởng mạnh mẽ đến quá trình xây dựng mô hình nhân vật đó là chất
liệu dùng để tạo ra những đối tượng trong môi trường không gian ảo, chất liệu
dùng để thiết kế trang phục quần áo, vũ khí… Hay là phải tạo ra những kiểu tóc,
lông mao cho nhân vật, để làm cho nhân vật chuyển động một cách uyển chuyển.
Nhưng vấn đề này đòi hỏi phải mất nhiều thời gian và công sức nghiên cứu.
Do thời gian nghiên cứu có hạn, nên trong đề tài lần này em mới chỉ dừng
lại ở mức: “ Mô phỏng chất liệu trong thực tại ảo và ứng dụng ”.
Dù cố gắng đến mấy, em cũng không thể tránh khỏi những sai xót. Em
mong nhận được ý kiến đóng góp của các thầy cô giáo và các bạn sinh viên yêu
thích ngành thực tại ảo.


Sinh viên thực hiện:
Nguyễn văn Tài







- 5 -
CHƯƠNG I
THỰC TẠI ẢO VÀ CHẤT LIỆU TRONG THỰC TẠI ẢO

1.1. Thực tại ảo và ứng dụng
1.1.1. Khái niệm về thực tại ảo
Thực tại ảo là một môi trường ba chiều được phát sinh, tổng hợp và điều
khiển thông qua máy vi tính nhằm mục đích mô phỏng lại thế giới thực hoặc một
thế giới theo tưởng tượng của con người. Nó cho phép người dùng thông qua các
thiết bị ngoại vi và bộ chuyển đổi tương tác với những sự vật, hành động của thế
giới ảo giống như tương tác với các sự kiện, hành động của thế giới thực.
Ví dụ : Người sử dụng có thể dịch chuyển một vật trong thế giới ảo, hoặc có
thể cảm nhận được một vật khi chạm vào nó.
1.1.2. Các lĩnh vực ứng dụng của thực tại ảo
Những lĩnh vực đang được nghiên cứu ứng dụng thực tại ảo một cách mạnh
mẽ hiện nay là: y học, giáo dục, tin học, thương mại, giao thông, hàng không,
xây dựng, khoa học quân sự, quốc phòng, thiết kế nội thất và trang trí nhà cửa,
giải trí, điện ảnh…
Trong khoa học quân sự, quốc phòng
Hiện nay, những ứng dụng của thực tại ảo trong huấn luyện quân lính, thử
nghiệm các loại vũ khí, các phương tiện chiến tranh, bản đồ hoá từng khu vực (hệ
thống định vị toàn cầu).
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 hệ thố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 phương pháp phòng thủ
và chiến đấu một cách hiệu quả.
Trong giáo dục và đào tạo
Một số trường đào tạo lái xe của Việt Nam hiện nay cũng đang sử dụng các
phương tiện cho phép học viên thực hành trên cơ sở thực tại ảo.
Xây dựng các mô hình thực tại trên máy vi tính nhằm cung cấp các môi trường

- 6 -
học tập và nghiên cứu cho người sử dụng. Những mô hình được xây dựng ở đây
chuyển tải được thực tế của chúng ta 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 gây kích
thích cao với người tham gia, cho phép chia sẻ tài nguyên về môi trường qua môi
trường mạng v.v… Đó chính là mô hình thực tại ảo.
Trong y học
Hiện nay trên thế giới, việc ứng dụng thực tại ảo vào y học khá phong phú.
Đặc biệt ở Mỹ trong phẫu thuật, bác sĩ đã có thể tiến hành các cuộc phẫu thuật
trong môi trường ảo, không cần có bệnh nhân mà vẫn như đang phẫu thuật một
bệnh nhân thật. Các bác sĩ cũng có thể tiến hành các cuộc phẫu thuật từ xa thông
qua các thiết bị của thực tại ảo. Thực tại ảo cũng có các ứng dụng trong lĩnh vực
tâm thần.


Hình 1.4. Hình ảnh của dự án nghiên cứu CHARM về tay của con người
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ả những
thay đổi có thể có của các bộ phận như sự co dãn cơ.
Trong dự án này, thực tại ảo làm nhiệm vụ mô phỏng lại cánh tay của con
người và cung cấp các dịch vụ thể hiện sự thay đổi của cánh tay con người khi có
sự tương tác của người sử dụng.

- 7 -


Hình 1.5. Hình ảnh về việc nghiên cứu hộp sọ của con người
Đây là 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 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.
Khi có ứng dụng thực tại ảo, những ca phẫu thuật trở nên chính xác hơn,
bệnh nhân mau lành bệnh hơn vì vết mổ nhỏ hơn so với vết phẫu thuật theo cách

phẫu thuật truyền thống. Hơn nữa, khi bệnh nhân được chữa trị bởi đồng thời
nhiều bác sĩ giỏi trên khắp thế giới, thì chắc chắn kết quả mang lại sẽ tốt hơn hơn
rất nhiều.
Hiện nay có rất nhiều dự án tập trung vào việc xây dựng các mô hình, mô
phỏng các bộ phận của con người, đồng thời mô phỏng những sự thay đổi cơ bản
khi có sự tương tác, thay đổi, hay sự biến đổi của các bộ phận khi con người hoạt
động. Việc xây dựng các mô hình cho phép thực hiện các ca phẫu thuật giả,
chuẩn đoán bệnh .
Trong thiết kế, xây dựng
Với sự trợ giúp của thực tại ảo, những thiết kế giờ đây không chỉ đơn thuần
là những thiết kế nữa mà nó đã tiến gần tới sản phẩm thực. Không những con
người có thể xem được hình ảnh trực quan của thiết bị cần thiết kế mà thậm chí
người ta còn có khả năng sử dụng các thiết bị đó. Ví dụ như: Với một cái ôtô,
người sử dụng không những xem được mọi ngóc ngách của nó mà còn có thể thử

- 8 -
lái nó trong môi trường ảo. Với một bản thiết kế xây dựng, không những khách
hàng có thể nhìn thấy các hình ảnh của nó mà còn có thể đi lại xem chi tiết từng
phòng, từng khu vực của kiến trúc đó với mọi góc nhìn có thể.
Bằng các hình ảnh được xây dựng trên máy vi tính sẽ giúp con nguời có thể
có một cái nhìn chi tiết về công trình đã được thiết kế.


Hình 1.6. Hình ảnh của dự án về xây dựng, thiết kế và trang trí
Trong khoa học cơ bản
Nói chung, hầu hết các ngành khoa học đều có thể ứng dụng thực tại ảo, đặc
biệt là các ngành như vật lý, hoá học, khảo cổ, sinh học, vũ trụ. Trong vật lý,
người ta có thể mô phỏng lại chính xác các hiện tượng của vật lý một cách trực
quan. Trong khảo cổ học, thực tại ảo giúp người ta dựng lại các kiến trúc đã bị
chôn vùi, mô phỏng lại các thời kỳ của tự nhiên. Ví dụ như: mô phỏng lại hoạt

động của các loài sinh vật đã bị tuyệt chủng như các bộ phim khoa học về khủng
long, về biển.
Trong thương mại, du lịch
Trong thương mại, đặc biệt là trong ngành quảng cáo, thực tại ảo đang có
một vị trí quan trọng. Nó giúp khách hàng tiếp cận gần hơn với hàng hoá để có
thể đánh giá chất lượng mà không cần có hàng trực tiếp. Trong du lịch, với hỗ trợ
thực tại ảo khách hàng có thể xem xét cảnh quan của nơi mà họ sẽ đến.

- 9 -
Trong giải trí
Thông qua việc mô phỏng các mô hình 3D nhằm cung cấp các dịch vụ phục
vụ tương tác của người trong môi trường ảo. Các 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 ta ở trong môi trường ảo mà
như ở trong môi trường thực.
Game thực tại ảo hiện nay đã trở thành một ngành công nghiệp thu được
nhiều lợi nhuận. Ở nước ta hiện nay thì game thực tại ảo chưa được biết tới nhiều
song ở một số nước phát triển thì đây là một ngành giải trí thu lợi nhuận khổng
lồ, ví dụ các nước Nhật, Mỹ, Anh.
Trong điện ảnh
Một vài 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ý đồ hoạ mạnh nhằm 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.
Trong điện ảnh ngày nay, con người có thể dựng được những thước phim
tưởng chừng như không thể dựng được với các kỹ xảo điện ảnh thông thường, ví
dụ trong một số cảnh của phim “Vua bọ cạp” v.v.. Các phim thực tại ảo ba chiều
cũng được sản xuất và trình chiếu tại các rạp chiếu phim ba chiều. Khi xem các
phim này bạn sẽ có cảm giác như đang sống trong chính bộ phim chứ không phải
bạn đang xem phim.
Trong 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 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 mỗi chiếc máy
bay không phải là nhỏ.
Trong những năm gần đây, khi tin học phát triển thì các ứng dụng của nó
vào lĩnh vực hàng không vũ trụ càng trở lên mạnh mẽ, nhấ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 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 như ngoài thực tế. Một chương trình máy tính tạo ra không gian 3D kết

- 10 -
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 nhằm nâng cao kỹ
năng xử lý tình huống như trong thực tế. Với cách này, người ta sẽ giảm thiểu
được thời gian, chi phí đào tạo và nâng cao tính an toàn của mỗi chuyến bay.
1.2. Mô phỏng chất liệu trong thực tại ảo
1.2.1. Tổng quan về mô phỏng chất liệu
Mô phỏng là một lĩnh vực quan trọng trong quá trình phát triển và ứng dụng
công nghệ thông tin ở Việt Nam nói riêng và trên thế giới nói chung. Nó là một
trong những mục tiêu cơ bản trong lĩnh vực công nghệ thông tin, do đó bài toán
mô phỏng là một trong những bài toán cơ bản, cốt yếu trong lĩnh vực công nghệ
thông tin. Các nhà nghiên cứu trên thế giới do theo đuổi các nghiên cứu mô
phỏng này từ hàng trục năm qua, gần đây đã thu được nhiều thành tựu đáng kể.
Bài toán mô phỏng là một bài toán mô phỏng lại những hiện tượng, hoạt động
của những đối tượng trong thế giới thực, mô phỏng lại những hoạt động của con
người, …Tuy nhiên, tuỳ thuộc vào từng bài toán cụ thể mà chúng ta có các bài
toán mô phỏng khác nhau.
Trong thực tại ảo, có rất nhiều loại đối tượng khác nhau, với mỗi đối tượng
có các chất liệu che phủ khác nhau, …Do đó, để mô phỏng các đối tượng trong
thực tại ảo trước hết chúng ta cần tạo ra đối tượng cần mô phỏng. Mỗi đối tượng

trong thực tại ảo rất đa dạng, phong phú, nó được xây dựng từ các loại chất liệu
khác nhau phù hợp với từng đối tượng. Như vậy, để tạo ra các đối tượng khác
nhau, ta cần tạo ra các đối tượng với các chất liệu khác nhau phù hợp với từng
đối tượng đó. Vì vậy, bài toán mô phỏng đối tượng trong thực tại ảo thực chất là
bài toán mô phỏng chất liệu cho các đối tượng trong thực tại ảo. Vì chất liệu là
một thành phần quan trọng, nó không thể thiếu trong bất kỳ đối tượng nào trong
thực tại ảo, nó là thành phần che phủ bên ngoài mỗi đối tượng, tạo ra sự phong
phú, đa dạng giữa các đối tượng. Đồ án này nghiên cứu mô phỏng chất liệu trong
thực tại ảo và ứng dụng.


- 11 -
Chất liệu tồn tại dưới nhiều dạng khác nhau:
+ Chất liệu lông, tóc
+ Chất liệu vải
+ Chất liệu nước
+ Chất liệu gỗ
Chẳng hạn chúng ta muốn mô phỏng một hồ nước hay một dòng sông, thì
chúng ta phải mô phỏng được sóng nước khi có tác động từ bên ngoài, với những
lực tác động khác nhau thì có những hình ảnh sóng khác nhau. Hay mô phỏng
một trận mưa chẳng hạn, thì cũng phải mô phỏng được từng hạt nước rơi xuống
như thế nào, khi va chạm vào các đối tượng thì phản ứng tiếp theo ra sao. Trong
thực tế thì khi mà một miếng kính rơi thì ta nghe thấy tiếng vỡ và tạo ra những
mảnh kính nhỏ, do vậy nếu mô phỏng chất liệu kính trong thực tại ảo thì sao?
Phải mô phỏng sao cho có thể nhìn thấy những vật thể khác đằng sau tấm kính đó
hay khi mà có một vật khác va chạm vào thì ta thấy mảnh kính đó phải vỡ và tạo
ra các mảnh vụn. Tóc và lông là một dạng chất liệu quan trọng trong thực tại ảo
do vậy trong đề tài này em xin trình bày một số cách mô phỏng chất liệu lông và
tóc.
Do phạm vi và tính chất của một đồ án tốt nghiệp đại học, ở đây tác giả

nghiên cứu loại chất liệu cụ thể: chất liệu lông, tóc. Vì lông, tóc là một trong
những thành phần quan trọng không thể thiếu đối với rất nhiều đối tượng như:
con người, động vật, …nó là những lĩnh vực có nhiều nghiên cứu đã và đang đưa
vào ứng dụng một cách hiệu quả bởi vì lông và tóc gắn liền với nhiều đối tượng
trong cuộc sống chúng ta như lông, tóc đều gắn liền với đối tượng là con người,
ngoài ra lông còn gắn liền với nhiều đối tượng khác như lông con châu, lông con
bò, lông con chó,... Vì vậy, để mô phỏng được các đối tượng khác nhau chúng ta
cần mô phỏng chất liệu lông, tóc, mô tả đối tượng, phân loại và phân nhóm các
mẫu lông, tóc khác nhau nên việc tạo ra các kiểu lông, tóc phù hợp với từng đối
tượng là những vấn đề quan trọng trong mô phỏng, được ứng dụng trong nhiều
ngành khoa học khác nhau. Một mức thấp hơn nhưng lại được ứng dụng nhiều đó

- 12 -
là việc tạo ra những mẫu lông và tóc khác nhau, phù hợp với từng đối tượng.
Chẳng hạn, việc tạo ra các mẫu lông hay tóc đối với những người nước ngoài thì
khác đối với các mẫu lông hay tóc con người Việt. Với sự bùng nổ của thông tin,
việc mô phỏng lông và tóc đối với từng đối tượng là điều cần thiết và đặc biệt là
đối với con người Việt, nó thể hiện nét văn hoá của con người Việt Nam.
Mô phỏng chất liệu lông, tóc nhằm mô phỏng lại những hiện tượng, hoạt
động thực của lông, tóc bằng máy tính, tạo ra được các mẫu lông, tóc khác nhau
phù hợp với từng đối tượng trong thế giới thực. Cùng với sự phát triển nhanh
chóng của công nghệ thông tin nói chung và hệ thống mô phỏng nói riêng, mô
phỏng chất liệu lông, tóc càng ngày càng trở nên là một xu hướng tất yếu, là một
hướng nghiên cứu mở và đầy hứa hẹn. Trong vòng 40 năm qua, rất nhiều thuật
toán được đề xuất và triển khai trên các hệ thống mô phỏng chất liệu lông, tóc.
Trên thế giới đã có nhiều bộ phần mềm thương mại dành cho mô phỏng tóc như:
Công ty Infinisys (
, .
Những phần mềm này cung cấp chức năng mô phỏng thiết kế kiểu tóc và tô màu
tóc với khoảng trên 800 kiểu tóc và chia làm 7 nhóm:

+ Kiểu tóc nữ: tóc dài (138 kiểu), trung bình (215 kiểu), ngắn (340 kiểu)
+ Kiểu tóc nam: tóc dài (9 kiểu), trung bình (35 kiểu), ngắn (70 kiểu)
+ Lông, râu ở mặt (râu cằm và râu mép): (22 kiểu)
Công nghệ mô phỏng chất liệu lông, tóc có ý nghĩa rất quan trọng trong
cuộc sống: thay vì tạo ra các kiểu lông, tóc thực trên con người thực chỉ tạo ra
các kiểu lông, tóc ảo trên con người ảo bằng những mệnh lệnh đơn giản. Cho
hiệu quả cao hơn.
Về các hệ thống mô phỏng chất liệu lông, tóc, hiện nay đã có nhiều
phương pháp mô phỏng được nghiên cứu và ứng dụng trong thực tế như: Hệ
thống mô phỏng tương tác physically -based cho những kiểu tóc, mô phỏng
tóc dưới tác động của nước và kiểu thiết kế, xây dựng mô hình tóc bằng những

- 13 -
mô tả chi tiết, hệ thống mô phỏng những mảnh tóc theo thời gian thực… tuy
nhiên, vấn đề mô phỏng chất liệu lông, tóc tự nhiên cho tới nay vẫn là một vấn
đề mở, ngay cả các hệ thống mô phỏng trên thế giới như:
... Đó là do chất lượng của các hệ thống mô
phỏng lông, tóc phụ thuộc vào nhiều yếu tố khác như:
+ Chất liệu lông, tóc
+ Kiểu dáng, kích thước lông, tóc (phụ thuộc vào từng đối tượng)
+ Nhân chủng học
+ Nét đặc trưng về văn hoá
+ Số lượng lông, tóc lớn
Về hệ thống mô phỏng chất liệu lông, tóc, người ta quan tâm tới các vấn đề
trong từng ngữ cảnh ứng dụng sau:
+ Mô phỏng chất liệu lông, tóc (ngắn, trung bình và tóc dài).
+ Mô phỏng chất liệu lông, râu ở mặt (râu cằm, râu mép,..)
+ Mô phỏng chất liệu lông, tóc cho phụ nữ thì khác với nam giới.
+ Mô phỏng chất liệu lông, tóc theo nét đặc trưng của từng đối tượng phù
hợp với từng quốc gia khác nhau -> sử dụng các phương pháp mô phỏng

khác nhau.
Hiện nay, những kết quả nghiên cứu ở trong nước về mô phỏng chất liệu
lông, tóc mới chỉ là bước đầu. Viện Công nghệ thông tin – Viện KH &CN Việt
Nam đã có một số hệ thống mô phỏng chất liệu như hệ thống mô phỏng chất liệu
lông, hệ thống mô phỏng chất liệu nước, hệ thống mô phỏng chất liệu vải. Tuy
nhiên, việc nghiên cứu hệ thống mô phỏng chủ yếu mới dừng ở mức nghiên cứu
và thử nghiệm, xây dựng mô hình trên cơ sở khai thác một số công cụ nhằm hỗ
trợ cho việc nghiên cứu.
Nhằm giải quyết một số điểm mấu chốt trong hệ thống mô phỏng chất liệu
lông, tóc, tác giả tập trung vào một số phương pháp:

- 14 -
+ Mô phỏng những thuộc tính của từng sợi lông - tóc, đám lông - tóc, mảnh
lông – tóc.
+ Mô phỏng chất liệu lông, tóc của các đối tượng khác nhau phù hợp với nét
văn hoá, kiểu dáng, kích thước,..
+ Mô phỏng những tương tác theo thời gian thực giữa các thành phần của
lông, tóc như: phát hiện va chạm và điều chỉnh va chạm giữa chúng.
Luận án nghiên cứu một số phương pháp mô phỏng chất liệu và nhằm định
hướng vào ứng dụng mô phỏng chất liệu lông, tóc trong thực tại ảo.
1.2.2. Mô hình mô phỏng chất liệu tóc
Lông và tóc có thể nói là những chất liệu gần giống nhau, chúng có cùng
tính chất vật lý. Nhưng thường thì Mô phỏng lông trong thực tại ảo sẽ dễ dàng
hơn mô phỏng tóc rất nhiều, ta thấy lông thường là ngắn hơn tóc, mềm mại hơn
và ít phải chịu tác động từ những lực bên ngoài. Chúng được dùng cho những đối
tượng ít được quan tâm hơn như: những con thú có lông, những con thú nhồi
bông, quần áo lông, hay trên con người như lông my, lông mày, lông tay…Do
đó khi mô phỏng lông chỉ cần tạo ra lông và gắn vào đối tượng, khi mà đối tượng
chuyển động thì lông cũng chuyển động theo. Mọi đối tượng cần được phủ lông
đều phải được xây dựng thông qua các phần mềm tạo hình 3d. Dưới đây là một

vài hình ảnh nói về việc mô phỏng lông trong thực tại ảo:

Hình 1.2.1a: Mô phỏng chất liệu lông thú

- 15 -

Hình 1.2.1b: Mô phỏng chất liệu lông áo
Mô phỏng tóc cũng tương tự như việc mô phỏng lông trong thực tại ảo,
nhưng nó phức tạp hơn nhiều. Người ta nói cái răng cái tóc là vóc con người vì
vậy làm sao để tạo ra được một mái tóc đẹp, thông qua mái tóc mà người ta có
thể đánh giá được tính cách của nhân vật. Mái tóc đen mềm mại nói nên người
con gái đó dịu dàng, hiền thục. Nhưng mái tóc vàng nói nên người con gái đó là
một người sành điệu, mái tóc ngắn cứng cáp cho thấy một người con trai khoẻ
mạnh, hùng dũng…Ngoài ra khi có các lực tác động vào tóc, thì tóc phải bay
theo những hướng đã xác định, do vậy cần phải tính toán nhiều lực trên một sợi
tóc. Khi đó vấn đề mô phỏng tóc trở nên rất khó khăn.
Dưới đây là sơ đồ của quá trình mô phỏng tóc.


Hình 1.2.2: Quá trình mô phỏng chất liệu tóc.


- 16 -
Để mô phỏng tóc trong thực tại ảo, trước hết phải xây dựng các kiểu đầu cho phù
hợp dựa trên các công cụ đồ hoạ 3D, chẳng hạn như công cụ 3d smax, hoặc
Maya. Từ các khung hình 3d này chúng ta có thể load các file 3d này và sử dụng
các ngôn ngữ lập trình để lập trình che phủ tóc. Dưới đây là một số mô hình mô
phỏng chất liệu tóc.



Hình 1.2.3: Một vài mẫu mô phỏng chất liệu tóc.
Do vậy để xây dựng được những nhân vật trong thế giới ảo giống với con
người ngoài thực tế hơn, thì tóc là một phần rất quan trọng trong việc xây dựng
mô hình nhân vật, để làm cho nhân vật sinh động. Việc xây dựng được một mô
hình tóc phù hợp với nhân vật đòi hỏi người lập trình phải mất nhiều thời gian,
công sức, bởi vì những vấn đề liên quan đến tóc là rất khó khăn và phức tạp.

Hình 1.2.4: Hai dạng tóc thẳng và tóc quăn

- 17 -
Tóc chuyển động không theo một hướng cụ thể, mà nó chuyển động theo những
lực tác động đến chúng, chẳng hạn như: ảnh hưởng của gió, hướng chuyển động
của đầu, của thân thể, theo trọng lực, ngoài ra nó còn bị chi phối khi bị thấm ướt
bởi nước. Do đó hình dạng và chuyển động của tóc rất phong phú, đa dạng.

Hình 1.2.5: Tóc khô và tóc thấm nước
Ngoài ra, việc phát hiện va chạm giữa tóc với tóc, gữa tóc với các vật thể khác
cũng đòi hỏi nhiều công nghiên cứu, để từ đó sẽ có sự phản xạ lại của tóc một
cách hợp lý. Không những thế, khi có ánh sáng chiếu vào thì màu của tóc cũng
phải thay đổi, phải có khả năng phản xạ lại ánh sáng một cách linh hoạt, để người
quan sát có cảm giác tóc mô phỏng gần giống với tóc ngoài thực tế.
1.3. Chức năng
Trong đề tài này chỉ trình bày một số mô hình mô phỏng tóc đơn giản, bao
gồm: những sợi tóc riêng lẻ, những bó tóc và những mảnh tóc. Những mô hình
này được xây dựng từ những lớp khung cơ bản, được mô tả qua những chuyển
động đơn giản và sự phát hiện va chạm, biến đổi đồ họa cho tóc, để đạt được sự
mềm dẻo trong sự cân bằng giữa quá trình mô phỏng và chất lượng của tóc được
mô phỏng. Mỗi một cái đầu của con người có khoảng 100 000 sợi tóc riêng biệt,
do vậy rất khó khăn để làm cho những sợi tóc này chuyển động trong thời gian
thực được giống như ở ngoài thế giới thực, vì máy tính phải sử dụng những con

số rất lớn để phục vụ cho quá trình chuyển động, hay va chạm của tóc. Ngoài ra,
những kiểu tóc dài, tóc quăn, tóc lượn sóng thì độ phức tạp của nó còn khó khăn
hơn nhiều. Quá trình mô phỏng hoạt động của tóc là một quá trình khó khăn phức
tạp và chậm chạp, đôi khi còn cảm thấy chán ngắt và gây nhiều phiền toái cho

- 18 -
người lập trình. Hiện nay đã có một số giải thuật tốt hơn dùng để mô phỏng tóc
trong thời gian thực.
Chúng ta sử dụng một chuỗi những khung động, nó được gọi là bộ khung cơ bản
nhất, mọi di chuyển của sợi tóc nằm bên trong khung này đều phải tuân theo sự
chuyển động của khung này. Với những mục đích mô phỏng tóc khác nhau thì sẽ
có các khung cơ bản phù hợp. Những miếng tóc được thay đổi kích thước để mô
phỏng những lớp tóc khác nhau. Mô hình bó cho phép biến đổi độ dày của tóc
khi mô phỏng trung gian giữa các lớp tóc. Những đường cong của mỗi khung
động đóng vai trò quan trọng quyết định đối với những sợi tóc riêng lẻ. Giải thuật
của chúng ta kết hợp với những kiểu trình bày khác nhau để tạo ra những mô
phỏng tóc ở mức độ chi tiết khác nhau làm cho tóc chuyển động một cách liên
tiếp, thực hiện phát hiện va chạm làm tăng tốc quá trình biến đổi đồ hoạ cho tóc.
Nó tự động chuyển những mức biến đổi gần nhau một cách linh hoạt để hình ảnh
của tóc không bị chuyển động một cách đột ngột. Để thỏa mãn nhu cầu của người
xem thì việc tóc dao động trong không gian, khoảng cách quan sát từ người xem
đến tóc phải phù hợp, vì nếu quá gần chúng ta sẽ thấy sự thiếu hoàn thiện của
những sợi tóc được mô phỏng, nếu khoảng cách đó là phù hợp thì chúng ta sẽ
thấy chuyển động của tóc là mịn màng và uyển chuyển. Ngoài ra những nhân tố
khác tác động đến quá trình mô phỏng tóc có gió tác động đến tóc, hay tóc bị ẩm
ướt, hay được chiếu sáng…đều phải được tính toán sao cho phù hợp.
 Tổng hợp những kiểu mô phỏng của tóc từ đó biết được những khung cơ
bản được sử dụng để mô phỏng cho các kiểu tóc khác nhau.
Tự động làm đơn giản hoá những khung hình học và những đặc tính vật lý
cho hoạt động của tóc.

 Giảm bớt tính toán trong toàn bộ quá trình mô phỏng động, sự phát hiện
va chạm của lông, tóc và những biến đổi đồ họa cho lông và tóc.
 Tính linh hoạt trong việc làm cân bằng giữa tốc tính toán để mô phỏng
lông, tóc và tính tự nhiên của lông, tóc đạt được trong quá trình mô phỏng.
 Tính tổng quát dưới dạng mô hình nhiều kiểu tóc khác nhau: ngắn thay vì
dài, thẳng thay vì gợn sóng, mỏng thay vì dày, tinh tế thay vì thô.

- 19 -
Sử dụng những kiểu khung cơ bản khác nhau để tạo ra những kiểu tóc khác nhau
khi mà thực hiện quá trình mô phỏng, có thể phải chấp nhận giảm chất lượng của
tóc khi mô phỏng.

Hình 1.3.1: 3 kiểu tóc đơn giản
(a) Một miếng tóc; (b) Một bó tóc; (c) Một sợi tóc.
Mô hình mô phỏng tóc là một mảng nghiên cứu lớn trong bộ môn đồ hoạ máy
tính và đã có rất nhiều cách tiếp cận được đề cập liên quan đến lĩnh vực này. Kỹ
thuật cơ bản được giới thiệu là mô hình chuyển động của những sợi tóc riêng lẻ,
với mỗi sợi tóc được miêu tả như là hàng loạt những đoạn thẳng giống nhau được
liên kết với nhau, việc hình thành nên sợi tóc phụ thuộc vào góc giữa những đoạn
thẳng đó. Những lực tương tác ứng dụng để điều khiển các điểm của những đoạn
thẳng phục vụ cho điều khiển hoạt động của tóc. Để giảm bớt toàn bộ thời gian
tính toán các thành phần của tóc ở gần nhau hoặc di chuyển trong những kiểu
cách tương tự, chúng được bó lại cùng nhau thành một nhóm hay một mớ. Sử
dụng những cách tương tự để nhóm những sợi tóc riêng lẻ lại cùng nhau thành
mớ để thuận lợi cho hoạt động của tóc dài, với mỗi kiểu sử dụng khung co giãn
và có thể làm biến dạng chúng. Một cách tiếp cận tương tự được sử dụng để
tương tác thiết kế các kiểu tóc. Tuy nhiên không kỹ thuật nào ở đây có thể thực
hiện cả hoạt động cho tóc và sự biến đổi của chúng trong thời gian thực. Mới
đây, một khối lượng ảnh 2D đã được sử dụng để làm gần chính xác cho những
nhóm tóc. Kỹ thuật như vậy cho phép sử dụng để mô phỏng tóc trong thời gian

thực. Tuy nhiên kết quả mô phỏng đó thiếu thực tế, nó không phù hợp với sự

- 20 -
xuất hiện của tóc. Kỹ thuật cho biến đổi trong thời gian thực của lông mao được
thừa hưởng từ thành quả phát triển của phần cứng đồ họa. Tuy nhiên kỹ thuật này
không phù hợp cho tóc dài, gợn sóng hoặc quăn.









- 21 -
CHƯƠNG II
MÔ PHỎNG CHẤT LIỆU LÔNG, TÓC TRONG THỰC TẠI ẢO
2. 1. Mô phỏng tóc ở mức độ chi tiết
Những giải thuật cho những kiểu tóc đơn giản, được mô phỏng ở mức độ
chi tiết, những khung hình học cơ bản của tóc và những kỹ thuật quyết định việc
làm mô hình tóc, để làm tăng tốc quá trình biến đổi những kiểu hình học phức tạp
cho mỗi mô hình tóc. Một sự khảo sát gần đây về mô hình đa giác, làm đơn giản
hoá các mặt trong của nó. Bao gồm một khung chung để lựa chọn và dịch chuyển
giữa những mức độ hình học chi tiết khác nhau để đạt đến một khung gần như
không thay đổi trong suốt quá trình tương tác.
Giải thuật của chúng ta kết hợp một số định nghĩa và phương pháp trước
đó, khái quát hoá những kỹ thuật này để tạo ra hàng loạt những mô hình đơn giản
cho những mô hình và quá trình biến đổi của tóc. Chúng ta sử dụng 3 kiểu mô
phỏng tóc đơn giản để mô phỏng các lớp khác nhau của tóc. Đó là những sợi

riêng lẻ, những bó và những miếng tóc.
Sử dụng cách mô phỏng ở mức độ chi tiết đã được mở rộng làm cho
những kiểu tóc chuyển động và những mô phỏng động của tóc được tốt hơn.
Kiểu mô phỏng ở mức độ chi tiết này được sử dụng để làm đơn giản hoặc làm
gần đúng những chuyển động trong một khung cảnh như cảnh ngoài thực tế,
tương tự như cách mô tả hình học chi tiết, nó được sử dụng để làm đơn giản hoá
một số hình học phức tạp. Mỗi kiểu tóc có một kiểu khung nhất định và chuyển
động của tóc lại dựa vào việc điều khiển các nút của bộ khung, nó ảnh hưởng đến
toàn bộ kiểu tóc.
Những loại tóc quăn có nhiều sự phức tạp hơn tóc thẳng, nó cần nhiều
điểm để định nghĩa độ quăn của tóc. Những đoạn mà độ xoắn ốc chặt hơn, thì
kích thước đoạn giữa mỗi điểm điều khiển được làm nhỏ hơn, có nhiều điểm điều
khiển trong khung hơn. Việc giảm bớt kích thước đoạn giữa mỗi điểm điều
khiển làm cho số điểm được điều khiển tăng lên nhưng vẫn giữ nguyên được độ
dài của tóc. Một bộ khung có thể được sử dụng để tạo ra nhiều kiểu tóc. Mỗi kiểu

- 22 -
mô phỏng tóc ở mức độ chi tiết được phát sinh từ một mô hình khung và như
vậy, nó có thể được sử dụng cho nhiều kiểu tóc khác nhau. Một nhóm những sợi
tóc riêng lẻ được được tập hợp lại là biểu hiện ở mức độ chi tiết nhất, sự trình
bày này đưa ra một kết quả trực quan, tốt nhất cho mỗi kiểu tóc. Hình dạng của
những nhóm sợi và những bó tóc được mô tả hay định nghĩa bởi người sử dụng.
Trong khi mô phỏng dưới dạng bó, cho kết quả tốt hơn đối với tóc thẳng, nó cũng
có thể được sử dụng để làm mô hình cho tóc quăn và gợn sóng, nhưng nó không
đạt được sự tinh tế như hai sự trình bày kia. Tuy nhiên những mô phỏng theo
kiểu miếng tóc chỉ được sử dụng khi người xem không quan tâm đến sự tinh tế
của nó. Mô phỏng kiểu miếng tóc được sử dụng khi khoảng cách từ nhân vật đến
người xem là xa, và những chi tiết chính xác không được chú ý, hoặc khi tóc
không nằm trong tầm nhìn của người xem. Như vậy trình bày theo kiểu miếng
không thể cho một kết quả chính xác cho việc trình bày các kiểu tóc. Ba kiểu tóc

khác nhau: thẳng, gợn sóng, quăn được trình bày trong hình .

Hình 2.1: 3 kiểu tóc đơn giản, thẳng đứng, gợn sóng, quăn
Sử dụng một số khung hình khác nhau cho trình bày một số kiểu tóc, ví dụ như:
những sợi riêng lẻ, những miếng, những bó, nó cung cấp một kỹ thuật để chuyển
giữa những mức độ chi tiết khác nhau của tóc. Trong mục này chúng ta mô tả
những hành động của bộ khung và những giải thuật mô phỏng tóc, mà sử dụng
kết hợp cả ba cách mô phỏng.
2.1.1. Những sợi tóc riêng lẻ
Trong thực tế đầu của con người có hàng 1000000 sợi tóc riêng lẻ, những
sợi tóc này có thể chuyển động theo những hướng khác nhau khi mà có các lực
bên ngoài tác động vào. Trong môi trường 3D, để mô phỏng được những sợi tóc

- 23 -
giống bên ngoài thực tế, chúng ta cũng phải xây dựng được những sợi tóc riêng
lẻ sau đó mới có thể lập trình điều khiển sợi tóc đó.

Hình 2.1.1: Mô phỏng sợi tóc trong không gian
Đây là một mẫu tóc mà ta nhìn thấy trong thực tế, nó được cấu tạo là một
hình trụ, có các mấu gọi là các đốt tóc, sự phát triển của tóc là sự phát triển thêm
các đốt tóc này. Khi có các lực bên ngoài tác động đến tóc làm cho tóc chuyển
động, quá trình chuyển động này là sự gấp khúc của các đốt tóc này. Sự chuyển
động mềm mại của tóc phụ thuộc vào kích thước của sợi tóc, phụ thuộc vào độ
ẩm của tóc. Dựa vào cấu tạo của sợi tóc trong thực tế, do vậy để mô phỏng được
tóc trong môi trường ảo họ đã chia một sợi tóc thành nhiều đoạn thẳng bằng nhau
và giữa các đoạn này có sự liên kết với nhau.

Hình 2.1.2: Hình ảnh sợi tóc trong thực tế.
Mỗi sợi tóc là một mô hình đường cong động với những điểm được điều
khiển, nó được thể hiện trong hình.


- 24 -


Hình 2.1.3: Khung hình cấu tạo của sợi tóc
Các đốt tóc được chia ra là các đoạn: S
1
, S
2
… Các đoạn này được liên kết
với nhau bởi các link, các liên kết này làm cho tóc trở nên mềm mại hơn. Ở đây
các liên kết là các lực liên kết giữa các đoạn lại với nhau tạo nên sự ràng buộc
giữa các đoạn với nhau.

Hình 2.1.4: Các lực liên kết trong một sợi tóc
Qua hình ta thấy tại những điểm nút (đốt tóc) thì những đoạn sau đó có thể
quay xung quanh những nút này, ngoài ra giữa các nút đối nhau lại có một lực
ràng buộc, do vậy chuyển động của tóc sẽ mềm mại hơn. Việc chuyển động của

- 25 -
tóc phụ thuộc vào các góc

0
và Ø
0
, tại mỗi điểm điều khiển trong khung.
Tóc thẳng có thể được tạo bởi sự biến đổi của các góc từ

i 0
đến 0 và Ø

i 0

đến 0, trong mỗi điểm điều khiển P
i
của khung. Chúng ta có thể tạo ra những loại
tóc gợn sóng, có những điểm điều khiển nằm tại những vị trí ngoằn ngoèo của
tóc, trên một khung tóc đã được thiết lập sẵn. Một bộ khung quanh co, hay gợn
sóng được tạo ra bằng cách gán cho mỗi

i 0
một giá trị nhất định giữa 0 và 90 độ,
và sau đó những giá trị của Ø
i0
thay đổi trong khoảng từ 0 đến 180 độ. Góc

i 0

chỉ rõ độ quăn của sợi tóc.

Ngoài ra, những loại tóc quăn hay xoắn ốc cũng có thể được tạo ra từ những
bộ khung tương tự như trên, giá trị

i 0
được gán một hệ số quăn, hay một giá trị
nằm giữa 0 và 90 độ. Tiếp theo, để đạt được hiệu ứng xoắn ốc, mỗi giá trị Ø
i 0

được tăng dần từ 90 độ đến độ dài của khung. Chúng ta gọi Ø
i 0
là góc đại diện

cho tính quăn của tóc.

F
i spring,
là lực cho nút thứ i trong khung được tính toán bằng việc kết hợp các lực
F
i

và F
i Ø
.

Trong đó k

và k
Ø
là những hằng số,

i 0
và Ø
i 0
là những góc ban đầu của nút
thứ i.

×