φυβλαςのβλογ
บล็อกของ phyblas



ทำความเข้าใจสีส่องผ่าน (transmission) ของ standardSurface ใน arnold ใน maya
เขียนเมื่อ 2021/09/18 20:01
แก้ไขล่าสุด 2021/10/23 19:12

หลังจากที่ในบทความก่อนหน้านี้ได้แนะนำการปรับแต่งค่าต่างๆที่สำคัญในแผง base และ specular ไปแล้ว (https://phyblas.hinaboshi.com/20210915, https://phyblas.hinaboshi.com/20210916 และ https://phyblas.hinaboshi.com/20210917)

คราวนี้มาต่อกันด้วยสมบัติอีกอย่างที่สำคัญ นั่นคือ transmission (透過) ซึ่งก็คือค่าที่กำหนดสีของแสงที่จะส่องผ่านวัตถุ

แผงปรับค่าในส่วนของ transmission นั้นอยู่ถัดจาก specular



กดเข้าไปดูจะเห็นค่าต่างๆที่สามารถปรับได้ดังนี้

ชื่อแอตทริบิวต์ ชื่อที่แสดงในแผงปรับค่า ความหมาย ค่า
transmission weight ウェイト น้ำหนักของสีส่องผ่าน 0.0 ~ 1.0
transmissionColor color カラー สีส่องผ่าน 0.0 ~ 1.0
0.0 ~ 1.0
0.0 ~ 1.0
transmissionDepth depth 深度 ความลึกในการกระเจิง ≥0.0
transmissionScatter scatter 散乱 สีการกระเจิง 0.0 ~ 1.0
0.0 ~ 1.0
0.0 ~ 1.0
transmissionScatterAnisotropy scatter anisotropy 散乱の異方性 ความไม่สม่ำเสมอในทิศการกระเจิงขณะส่องผ่าน -1.0 ~ 1.0
transmissionDispersion dispersion abbe 拡散アッベ数 เลขอับเบอสำหรับการกระจายแสงเช่นในเพชรหรือกระจก ≥0.0
transmissionExtraRoughness extra roughness 余分な粗さ ความหยาบเสริมเพิ่มเติมจากความหยาบในส่วนของสเป็กคิวลาร์ -1.0 ~ 1.0

เนื่องจากมีรายละเอียดที่น่าพูดถึงมาก จะขอแบ่งเป็น ๒ ตอน สำหรับหน้านี้จะมาลองดูแค่ที่ค่าน้ำหนักของแสงส่องผ่าน transmission และแสงของสีส่องผ่น transmissionColor ส่วนค่าที่เหลือซึ่งเกี่ยวกับการกระเจิงและกระจายแสงจะยกไปเขียนอึงแยกอีกที

ในที่นี้ขอแสดงตัวอย่างทดสอบโดยใช้โมเดล ฮาตากาเซะ (旗風はたかぜ) (ที่มา https://3d.nicovideo.jp/works/td30765)

ก่อนอื่นส่วนสำคัญอย่างหนึ่งที่ไม่ควรลืมถ้าหากจะเล่นกับแสงทะลุผ่านก็คือให้ปรับ ray depth ของ transmission เป็นเลขเยอะๆ เผื่อจะได้ทะลุผ่านได้หลายครั้ง นอกจากนั้นปรับผลรวม total ให้เยอะตามด้วย ในที่นี้ปรับค่าตามนี้






ความเปลี่ยนแปลงไปตามค่าน้ำหนัก (weight) ของสีส่องผ่าน

เริ่มแรกลองดูว่าเมื่อให้ transmission เป็นสีขาวล้วนแล้วปรับค่ำน้ำหนักของแสงส่องผ่านเพิ่มขึ้นไปเรื่อยๆจาก 0 จนถึง 1 จะเป็นอย่างไร

ในที่นี้ใส่ texture เป็นสี base ไปตามปกติ ส่วน specular ให้เป็น 0 ไปทั้งหมด


จะเห็นว่ายิ่ง weight ของ transmission มากก็จะยิ่งดูใสขึ้น สามารถมองทะลุเห็นด้านหลังได้ โดยพอค่าเป็น 1 แล้วสีของ base ก็จะไม่มีผลอะไร กลายเป็นโปร่งใสไปโดยสมบูรณ์ เงาก็หายไปด้วย

ภาพที่เห็นเมื่อมองผ่านวัตถุใสนี้ไม่ใช่แค่ทะลุไปเฉยๆ แต่ทะลุพร้อมหักเหแสงด้วย เหมือนเวลาเคลื่อนผ่านเลนส์หรือกระจก ทำให้ภาพที่เห็นอยู่ด้านหลังดูบิดเบี้ยวไป ดูแล้วสมจริง




ความเปลี่ยนแปลงไปตามดัชนีหักเหแสง

ค่าที่กำหนดสมบัติหักเหแสงระหว่างส่องผ่านวัตถุก็คือ specularIOR ซึ่งก็คือดัชนีหักเหแสงตัวเดียวกับที่ใช้ในสี specular ค่านี้มีผลทั้งเมื่อสะท้อนและการหักเหเมื่อส่องผ่าน

โดยค่าตั้งต้นแล้ว specularIOR=1.5 ซึ่งก็เท่ากับกรณีของแก้วโดยทั่วไป แต่หากเป็นน้ำก็จะเป็น 1.33 หรือเพชรจะอยู่ที่ประมาณ 2.4

ลองปรับค่าดัชนีหักเหตั้งแต่ 0.1 ไปจนถึง 2.5 แล้วดูความแตกต่าง


กรณีที่ดัชนีหักเหแสงน้อยกว่า 1 จุดที่มองผ่านทำมุมต่ำจะเกิดการสะท้อนกลับหมด ยิ่งดัชนีหักเหห่างจาก 1 มากภาพที่มองผ่านก็จะยิ่งหักเหไปมาก

ในที่นี้มีทั้งแสงหักเหและแสงสะท้อนปนกัน แต่สามารถแยกแยกได้ว่าอะไรเป็นอะไรโดยดูว่าถ้าเป็นภาพที่มองทะลุผ่านจะเปลี่ยนไปตามดัชนีหักเหแสง แค่ภาพจากการสะท้อนจะหน้าตาเหมือนเดิมตลอด ไม่ขึ้นกับดัชนีหักเหแสง




ความเปลี่ยนแปลงไปตามความหยาบ

ค่า specularRoughness คือความหยาบของสีสเป็กคิวลาร์นั้นไม่ได้แค่กำหนดความหยาบในการสะท้อน แต่ยังกำหนดความหยาบของแสงส่องผ่านด้วยเช่นกัน

ลองมาดูความเปลี่ยนแปลงที่เกิดขึ้นเมื่อปรับค่าความหยาบตั้งแต่ 0 ถึง 1





เมื่อให้ความโปร่งใสเฉพาะบางสี

ในตัวอย่างที่ผ่านมาเราปรับแสงส่องผ่านเป็นสีขาว นั่นหมายความว่าทุกสีสามารถส่องผ่านไปได้หมด แต่หากต้องการให้ผ่านได้บางสีก็สามารถทำได้

ในที่นี้ให้ specularRoughness=0.1 ลองดูว่าถ้าให้ค่าสีแดงกับเขียนเป็น 1 อยู่แล้วปรับค่าสีน้ำเงินลดลงเรื่อยๆตั้งแต่ 1 ไปจนถึง 0 จะเป็นอย่างไร


พอสีน้ำเงินเป็น 0 นั่นคือเป็นสี 1,1,0 แสงทะลุผ่านก็จะเป็นสีเหลือง ทำให้เห็นวัตถุเป็นสีเหลืองด้วย นอกจากนี้ยังเกิดเงาเป็นสีเหลืองด้วย เพราะสีแดงกับเขียวเท่านั้นที่ผ่านได้ สีน้ำเงินถูกดูดกลืนไปหมดระหว่างผ่านวัตถุ




ความเปลี่ยนแปลงไปตามดัชนีหักเหแสงในกรณีที่โปร่งใสสีเดียว

ต่อมาลองมาดูกรณีที่ให้แสงผ่านได้แค่สีเดียว ในที่นี้ให้เป็นสีแดง (1,0,0) ให้ specularRoughness=0.1 แล้วปรับดัชนีหักเหแสง specularRoughness=0.1 ไปเรื่อยๆ





เมื่อลองใช้เท็กซ์เจอร์เป็นสีส่องผ่าน

สีส่องผ่านก็สามารถใช้เป็นเท็กซ์เจอร์ได้เช่นเดียวกับสี base ลองดูว่าหากเปลี่ยนเอาสีเท็กซ์เจอร์ที่เคยใช้เป็นสี base อยู่มาใส่ให้สีส่องผ่านแทนจะเป็นอย่างไร

ในตัวอย่างนี้ก็ใช้ specularRoughness=0.1 แล้วเปลี่ยนค่า specularIOR ไปเรื่อยๆเช่นกัน





เมื่อใช้แสงที่มีแค่บางสีส่องผ่านวัตถุที่ให้ผ่านได้บางสี

ในตัวอย่างที่ผ่านมาใช้แต่แสงสีขาวส่องผ่านตลอด แต่ถ้าลองใช้แสงสีอื่นส่องบ้างจะเป็นอย่างไรก็น่าลองดูบ้างเช่นกัน

ในที่นี้ลองใช้สีเหลือง (1,1,0) ส่อง แล้วให้ค่าส่องผ่านสีแดงเป็น 0 และสีเขียวเป็น 1 แสงจึงผ่านได้แค่สีเขียว จากนั้นลองปรับให้แสงสีเขียวผ่านได้น้อยลงเรื่อยๆจนพอเป็น 0 ภาพก็จะดำมืดไป




จากตัวอย่างในนี้ทำให้ได้เห็นผลของการใช้แสงส่องผ่านและค่าต่างๆที่มีส่วนเกี่ยวข้องเช่น specularIOR และ specularRoughness เป็นต้น แต่ยังไม่ได้พูดถึงค่าตัวที่เหลือในแผง transmission ซึ่งจะเกี่ยวกับการกระเจิงและการกระจายแสง การทดลองในส่วนนี้จะแยกไปลงไว้ในบทความถัดไป




-----------------------------------------

囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧

ดูสถิติของหน้านี้

หมวดหมู่

-- คอมพิวเตอร์ >> 3D >> maya

ไม่อนุญาตให้นำเนื้อหาของบทความไปลงที่อื่นโดยไม่ได้ขออนุญาตโดยเด็ดขาด หากต้องการนำบางส่วนไปลงสามารถทำได้โดยต้องไม่ใช่การก๊อปแปะแต่ให้เปลี่ยนคำพูดเป็นของตัวเอง หรือไม่ก็เขียนในลักษณะการยกข้อความอ้างอิง และไม่ว่ากรณีไหนก็ตาม ต้องให้เครดิตพร้อมใส่ลิงก์ของทุกบทความที่มีการใช้เนื้อหาเสมอ

สารบัญ

รวมคำแปลวลีเด็ดจากญี่ปุ่น
มอดูลต่างๆ
-- numpy
-- matplotlib

-- pandas
-- manim
-- opencv
-- pyqt
-- pytorch
การเรียนรู้ของเครื่อง
-- โครงข่าย
     ประสาทเทียม
ภาษา javascript
ภาษา mongol
ภาษาศาสตร์
maya
ความน่าจะเป็น
บันทึกในญี่ปุ่น
บันทึกในจีน
-- บันทึกในปักกิ่ง
-- บันทึกในฮ่องกง
-- บันทึกในมาเก๊า
บันทึกในไต้หวัน
บันทึกในยุโรปเหนือ
บันทึกในประเทศอื่นๆ
qiita
บทความอื่นๆ

บทความแบ่งตามหมวด



ติดตามอัปเดตของบล็อกได้ที่แฟนเพจ

  ค้นหาบทความ

  บทความแนะนำ

ตัวอักษรกรีกและเปรียบเทียบการใช้งานในภาษากรีกโบราณและกรีกสมัยใหม่
ที่มาของอักษรไทยและความเกี่ยวพันกับอักษรอื่นๆในตระกูลอักษรพราหมี
การสร้างแบบจำลองสามมิติเป็นไฟล์ .obj วิธีการอย่างง่ายที่ไม่ว่าใครก็ลองทำได้ทันที
รวมรายชื่อนักร้องเพลงกวางตุ้ง
ภาษาจีนแบ่งเป็นสำเนียงอะไรบ้าง มีความแตกต่างกันมากแค่ไหน
ทำความเข้าใจระบอบประชาธิปไตยจากประวัติศาสตร์ความเป็นมา
เรียนรู้วิธีการใช้ regular expression (regex)
การใช้ unix shell เบื้องต้น ใน linux และ mac
g ในภาษาญี่ปุ่นออกเสียง "ก" หรือ "ง" กันแน่
ทำความรู้จักกับปัญญาประดิษฐ์และการเรียนรู้ของเครื่อง
ค้นพบระบบดาวเคราะห์ ๘ ดวง เบื้องหลังความสำเร็จคือปัญญาประดิษฐ์ (AI)
หอดูดาวโบราณปักกิ่ง ตอนที่ ๑: แท่นสังเกตการณ์และสวนดอกไม้
พิพิธภัณฑ์สถาปัตยกรรมโบราณปักกิ่ง
เที่ยวเมืองตานตง ล่องเรือในน่านน้ำเกาหลีเหนือ
ตระเวนเที่ยวตามรอยฉากของอนิเมะในญี่ปุ่น
เที่ยวชมหอดูดาวที่ฐานสังเกตการณ์ซิงหลง
ทำไมจึงไม่ควรเขียนวรรณยุกต์เวลาทับศัพท์ภาษาต่างประเทศ

บทความแต่ละเดือน

2024年

1月 2月 3月 4月
5月 6月 7月 8月
9月 10月 11月 12月

2023年

1月 2月 3月 4月
5月 6月 7月 8月
9月 10月 11月 12月

2022年

1月 2月 3月 4月
5月 6月 7月 8月
9月 10月 11月 12月

2021年

1月 2月 3月 4月
5月 6月 7月 8月
9月 10月 11月 12月

2020年

1月 2月 3月 4月
5月 6月 7月 8月
9月 10月 11月 12月

ค้นบทความเก่ากว่านั้น

ไทย

日本語

中文