Bài 13 CHIẾU SÁNG VÀ TẠO BÓNG BỀ MẶT
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
Trịnh Thành Trung trungtt@soict.hust.edu.vn
c
o
m
o
NỘI DUNG
1. Chiếu sáng Ánh sáng môi trường i. ii. Ánh sáng khuếch tán iii. Ánh sáng gương iv. Mô hình ánh sáng Phong 2. Tạo bóng bề mặt
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
-
o
m
o
1
©
C
p
y
r
i
g
h
t
S
h
o
KHÁI NIỆM
w
e
e
t
.
c
-
o
m
o
Khái niệm
• Nhờ vào đâu mắt có thể cảm nhận ánh sáng? – Yếu tố sinh lý: • Cấu tạo mắt – Yếu tố vật lý:
• Tính chất của ánh
sáng
©
C
p
y
r
• Tính chất của bề
i
g
h
t
S
mặt
h
o
w
e
e
t
.
c
o
m
o
Cấu tạo của mắt
• Tương tự một chiếc
camera: – Có rất nhiều cảm
biến hình ảnh phía sau mắt
– Mắt có thể cảm nhận được ánh sáng từ nhiều nguồn khác nhau
©
C
p
y
r
i
g
h
t
S
h
o
– Tương tự như công nghệ CMOS hoặc CCD
w
e
e
t
.
c
o
Các thông tin nhận được từ mắt sẽ được gửi đến não bộ để xử lý
m
o
THẢO LUẬN
• Chiếc váy có màu gì
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
-
o
m
o
Tính chất ánh sáng
• Ánh sáng có thể thay đổi màu sắc của một điểm trên vật thể • Những yếu tố ảnh hưởng đến màu sắc của vật thể:
©
C
p
y
r
1. Vị trí của điểm mẫu 2. Vị trí của nguồn sáng 3. Màu sắc và cường độ ánh sáng 4. Véc-tơ camera 5. Véc-tơ pháp tuyến của bề mặt tại điểm mẫu 6. Đặc điểm vật lý của đối tượng (mô hình phản
i
g
h
t
S
xạ, màu sắc...)
h
o
w
e
e
t
.
c
o
m
o
Ảo giác về màu sắc
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Định nghĩa
• Một số định nghĩa:
– Rọi sáng (Illumination): Là sự vận chuyển của năng
lượng từ nguồn sáng đến bề mặt hoặc điểm • bao gồm chiếu sáng trực tiếp và gián tiếp
– Chiếu sáng (Lighting): Quá trình tính cường độ sáng tại một điểm trong không gian 3 chiều, thường là trên bề mặt một đối tượng
– Tô bóng (Shading): Quá trình gán các màu cho các
pixel
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
2
©
C
p
y
r
i
g
h
t
S
h
o
CHIẾU SÁNG
w
e
e
t
.
c
-
o
m
o
Chiếu sáng
• Sự chiếu sáng (lighting) được tính bởi hai yếu tố
Nguồn sáng
Thuộc tính bề mặt
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Nguồn sáng
• Tính chất của nguồn sáng
– Quang phổ của nguồn phát (màu của ánh
sáng)
– Các thuộc tính hình học
• Vị trí • Hướng • Hình dạng
©
– Suy giảm theo hướng
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Nguồn sáng
• Hai loại nguồn sáng
– Nguồn sáng vô cực
• Tạo các tia sáng song
song
• Hướng là liên tục trên
vùng nhìn
• Không bị suy giảm năng
lượng bức xạ – Nguồn sáng cục bộ • Hướng xuyên tâm từ
nguồn
©
C
• Bị suy giảm năng lượng
p
y
r
bức xạ (=1/R2)
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
• Phức tạp hơn nếu nguồn sáng không phải dạng điểm mà là nguồn phân tán
o
Thuộc tính bề mặt
Thuộc tính bề mặt
– Phổ phản xạ (màu của bề mặt) – Các đặc tính hình học
• Vị trí • Hướng • Cấu trúc vi mô
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Chiếu sáng
• Giả sử chúng ta có một đa giác và một điểm nhìn trong không gian 3 chiều, chúng ta có thể xác định được pixel tương ứng. Vấn đề đặt ra là màu sắc của pixel đó như thế nào?
©
C
p
y
r
• Nếu chúng ta muốn tạo một hình ảnh giống thật, chúng ta cần phải mô phỏng việc chiếu sáng trên bề mặt của khung cảnh
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Chiếu sáng
– Cần phải mô phỏng cả yếu tố vật lý và yếu tố quang
học
– Vì sự phức tạp của việc chiếu sáng, chúng ta cần
phải sử dụng nhiều các phương pháp xấp xỉ (hay còn gọi là các hack) để việc mô phỏng có thể chạy đủ nhanh
• Chỉ xét đến các chiếu sáng trực tiếp từ nguồn sáng
đến bề mặt
• Đơn giản hóa dạng hình học của nguồn phát trong
©
các trường hợp không đáng kể
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Phân loại mô hình chiếu sáng
• Các mô hình chiếu sáng thường được xếp vào một
trong hai loại:
1. Thực nghiệm: Sử dụng những công thức đơn giản cho kết quả gần đúng với những quan sát có thể nhìn được 2. Mô phỏng vật lý: Các mô hình chiếu sáng dựa trên các
công thức vật lý của ánh sáng
• Trong hầu hết các trường hợp, chúng ta sử dụng
©
C
p
y
r
i
g
h
t
các mô hình thực nghiệm trong đồ họa tương tác. Gần đây, các mô hình mô phỏng vật lý đang dần được sử dụng rộng rãi trong các hệ đồ họa hiện đại
S
h
o
w
e
e
t
.
c
o
m
o
2.1
©
C
p
y
r
i
g
h
t
S
h
o
ÁNH SÁNG MÔI TRƯỜNG
w
e
e
t
.
c
-
o
m
o
Ánh sáng môi trường
• Các vật thể khi không được chiếu sáng trực tiếp
vẫn có thể nhìn thấy được – Ví dụ: Trần nhà, Cạnh tường hay Bàn ghế... • Nguyên nhân: Do các chiếu sáng gián tiếp từ
nguồn sáng, phản xạ qua các bề mặt trung gian
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Ánh sáng môi trường
• Trong công nghệ đồ họa, tính toán việc chiếu
sáng gián tiếp qua các bề mặt trung gian là rất tốn kém, do đó chúng ta sử dụng một mẹo gọi là ánh sáng môi trường (ambient light) – Không sử dụng đặc điểm định hướng hay không gian,
ánh sáng chiếu lên toàn bộ bề mặt là như nhau
– Lượng ánh sáng được phản xạ lại chỉ phụ thuộc vào
tính chất của bề mặt phản xạ
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Ví dụ: Ánh sáng môi trường
• Khung cảnh chỉ được chiếu sáng bằng ánh sáng
môi trường
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Ánh sáng môi trường
• Là tính toán xấp xỉ đơn giản cho các quá trình
chiếu sáng phức tạp trên thực tế
• Đối với mỗi mẫu bước sóng, ánh sáng môi
trường phản xạ trên một bề mặt phụ thuộc vào – Các thuộc tính bề mặt – Cường độ của nguồn sáng môi trường (là
hằng số đối với tất cả các điểm trên toàn bộ các bề mặt)
©
C
p
• Kết quả thu được: Màu đồng nhất trên toàn bộ
y
r
i
g
h
t
S
đối tượng
h
o
w
e
e
t
.
c
o
m
o
Ánh sáng môi trường
I = ka Ia
• Trong đó
– I: cường độ ánh sáng thu được – Ia: cường độ ánh sáng chiếu đến – ka: tỉ lệ phản xạ
Ví dụ: hình cầu
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Ví dụ: Ánh sáng môi trường
• Các trường hợp sử dụng ánh sáng môi trường
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Ví dụ: Ánh sáng môi trường
• Các trường hợp KHÔNG sử dụng ánh sáng môi
trường
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
2.2
©
C
p
y
r
i
g
h
t
S
h
o
ÁNH SÁNG KHUẾCH TÁN
w
e
e
t
.
c
-
o
m
o
Phản xạ khuếch tán
• Trong thực tế, khi tia sáng chạm vào một điểm:
– Nếu đối tượng có một bề mặt thô ráp, ánh sáng sẽ bị
phản xạ theo nhiều hướng khác nhau
– Vì lý do này, mỗi tia sáng chiếu đến đều có thể được
phản xạ theo một hướng bất kỳ trên bán cầu
– Sử phản xạ ánh sáng này được gọi là phản xạ khuếch
©
tán (diffuse reflection)
C
p
y
r
i
Vậy cường độ khúc xạ phụ thuộc vào yếu tố nào?
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Phản xạ khuếch tán
Mặt khuếch tán Lambert
• Một mặt khuếch tán lý tưởng sẽ tuân theo định
luật cosin Lambert: – Năng lượng phản xạ bởi một phần nhỏ trên bề mặt từ một nguồn sáng theo một hướng cho trước tỉ lệ thuận với cosin của góc tạo bởi hướng này và pháp tuyến của bề mặt
©
C
p
y
r
i
g
• Lưu ý là cường độ phản xạ không phụ thuộc vào hướng nhìn nhưng phụ thuộc vào hướng của bề mặt với nguồn sáng
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Ví dụ: Phản xạ khuếch tán
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Ánh sáng khuếch tán
• Góc tạo bởi vector pháp tuyến của bề mặt và tia
l
n
sáng gọi là góc tới:
©
• Công thức tính cường độ ánh sáng khuếch tán
C
p
y
r
i
g
h
t
S
h
o
w
e
I = kd Ip cos
e
t
.
c
o
m
o
Ánh sáng khuếch tán
I = kd Ip cos
• Trong đó
– Ip: cường độ ánh sáng thu được – kd: độ phản xạ khuếch tán
Ví dụ: hình cầu (được chiếu sáng từ bên trái)
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
Không phụ thuộc vào vị trí camera
o
m
o
2.3
©
C
p
y
r
i
g
h
t
S
h
o
ÁNH SÁNG GƯƠNG
w
e
e
t
.
c
-
o
m
o
Phản xạ gương
• Trong chiếu sáng, phản xạ
gương (specular reflection) xảy ra trên các bề mặt sáng bóng – Kim loại bóng – Bề mặt xe ô tô
©
C
p
y
r
i
g
h
t
S
• Ánh sáng rọi trên bề mặt gương tạo ra một điểm sáng gọi là điểm sáng gương (specular highlight)
h
o
w
e
e
t
.
c
o
m
o
Phản xạ gương
• Ở mức hiển vi, bề mặt phản xạ gương rất mịn, do đó ánh sáng phản xạ tương tự như phản xạ trên bề mặt gương
• Bề mặt càng mịn thì nó càng giống như một tấm
gương
• Vị trí điểm sáng gương xuất hiện phụ thuộc vào
góc nhìn của người quan sát
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Phản xạ gương
• Mặt phản xạ gương tuân theo định luật Snell: – Tia sáng đến và tia sáng phản xạ nằm trên cùng một mặt phẳng với vector pháp tuyến của bề mặt
– Góc tạo bởi tia phản xạ với vector pháp tuyến của bề mặt bằng góc tạo bởi tia tới với vector pháp tuyến
©
C
p
y
r
i
g
h
t
l = r
S
h
o
w
e
e
t
.
c
o
m
o
Phản xạ gương
• Định luật Snell áp dụng cho những bề mặt gương lý
tưởng (Ví dụ: gương, chrome...). • Đối với mặt gương không lý tưởng:
– Thay vì việc phải mô hình hóa mức vi mô của bề mặt để xử lý việc phản xạ theo quan sát thông thường:
– Khi tia sáng tiếp xúc bề mặt, một số ánh sáng sẽ bị phản xạ theo hướng lệch một chút so với tia phản xạ lý tưởng
©
C
p
– Góc lệch so với tia phản xạ lý tưởng càng cao,
y
r
i
g
h
t
S
h
o
w
e
áng sáng được phản xạ càng ít
e
t
.
c
o
m
o
Phản xạ gương
– Cường độ ánh sáng phản xạ so với tia phản
xạ lý tưởng
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Ánh sáng gương
©
C
p
y
r
i
g
h
t
S
h
o
• Trong đó • nshiny: tỉ lệ bóng, là một hằng số dựa trên các giá trị thực nghiệm • Công thức này không xây dựng dựa trên một cơ sở vật lý nào, nhưng đem lại hiệu quả khá tốt trong thực tế
w
e
e
t
.
c
o
m
o
Ví dụ: Ánh sáng gương
Ví dụ: hình cầu
©
C
p
y
Không phụ thuộc vào màu sắc của vật thể
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Hệ số bóng
• Biểu đồ thể hiện cường độ phản xạ gương theo
góc nhìn với các giá trị nshiny khác nhau
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
2.4
©
C
p
y
r
i
g
h
t
S
h
o
MÔ HÌNH ÁNH SÁNG PHONG
w
e
e
t
.
c
-
o
m
o
Mô hình ánh sáng Phong
• Mô hình ánh sáng Phong (Bùi Tường Phong, Đại học Utah) là sự kết hợp của cả ánh sáng môi trường, phản xạ khuếch tán và phản xạ gương
©
C
p
y
Ánh sáng môi trường (Ambient Light)
Khuếch tán (Diffuse)
Phản xạ gương (Spectacular)
r
i
g
h
t
S
h
o
w
góc nhìn
e
e
màu sắc môi trường
hướng ánh sáng
t
.
c
o
m
o
Mô hình ánh sáng Phong
• Công thức tính: cộng tất cả lại
𝐼 = 𝐼𝑎𝑘𝑎 + 𝐼𝑝 𝑘𝑑 cos 𝜃 + 𝑘𝑠 cos𝑛 𝜑 • Nếu có nhiều nguồn sáng: tính cường độ sáng
cho từng nguồn sáng và tính tổng 𝑙𝑖𝑔ℎ𝑡𝑠
𝐼 = 𝐼𝑎𝑘𝑎 + 𝐼𝑝 𝑘𝑑 cos 𝜃 + 𝑘𝑠 cos𝑛 𝜑
𝑝
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Mô hình ánh sáng Phong
• Chúng ta có thể sử dụng tích vô hướng (dot
product) thay cho các phép tính cosin
• Trong đó
©
C
p
y
– N: vector pháp tuyến của bề mặt – L: vector đến của tia sáng – V: vector hướng về vị trí mắt – R: vector phản xạ lý tưởng
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
3
©
C
p
y
r
i
g
h
t
S
h
o
TẠO BÓNG BỀ MẶT
w
e
e
t
.
c
-
o
m
o
Khái niệm
• Một bề mặt sử dụng mô hình các đa giác/tam
giác: – Mỗi mặt có một vector pháp tuyến nhất định – Với ánh sáng khuếch tán, phản xạ khuếch tán
là không đổi trên mọi mặt
– Với điểm nhìn là xa vô cực, hệ số phản xạ
gương là không đổi trên mọi mặt
©
C
p
y
r
i
g
h
t
• Giả sử chúng ta có một bề mặt được định nghĩa là một mặt các đa giác, việc tô màu cả bề mặt này được thực hiện như thế nào?
S
h
o
w
e
e
t
.
c
o
m
o
Tạo bóng bề mặt
• Quá trình tính màu sắc cho cả bề mặt được gọi
là tạo bóng bề mặt (shading)
• Có nhiều cách khác nhau để tạo bóng bề mặt • Việc tạo bóng bề mặt được thực hiện ở bước rời
rạc hóa (rasterization)
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Tạo bóng phẳng
• Cách đơn giản nhất là tạo bóng phẳng (flat
shading) – Tính màu sắc của một điểm duy nhất ở chính
giữa của mặt đa giác
– Tất cả các điểm khác nằm trên mặt đa giác
cũng được tô màu giống nhau
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Ví dụ: Tạo bóng phẳng
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Nhược điểm
• Bị ảnh hưởng bởi hiệu ứng Mach band
– Con người rất nhạy cảm với sự thay đổi đột ngột về độ
sáng
– Luôn cảm nhận được các góc cạnh dù số lượng đa giác
được tăng lên
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Tạo bóng Gouraud
• Tạo bóng Gouraud (Henri Gouraud)
– Tính màu sắc tại mỗi đỉnh của mặt đa giác,
sau đó
– Nội suy màu sắc trong đa giác
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Ví dụ: Tạo bóng Gouraud
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Nhược điểm
• Trong phản xạ gương (specular reflection), – ánh sáng giảm theo giá
trị cos𝑛 𝜑
– Tạo bóng Gouraud nội
suy tuyến tính khiến ánh sáng highlight trở nên quá lớn
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
– Tạo bóng Gouraud có thể bỏ qua ánh sáng highlight ở giữa mặt đa giác
c
o
m
o
Tạo bóng Phong
• Tạo bóng Phong (Bùi Tường Phong)
– Thực hiện tính sự chiếu sáng cho tất cả pixel
trong quá trình rời rạc hóa (rasterization)
– Nội suy vector pháp tuyến tại mỗi đỉnh
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
Ví dụ: Tạo bóng Phong
©
C
p
y
r
i
g
h
t
S
h
o
w
e
e
t
.
c
o
m
o
So sánh
• So sánh giữa các phương pháp tạo bóng
©
C
p
y
r
i
g
h
t
S
h
o
Tạo bóng phẳng
Tạo bóng Phong
Tạo bóng Gouraud
w
e
e
t
.
c
o
m
o