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



[maya] การสร้างวัสดุที่สมจริงโดยใช้ aiStandard ของ arnold
เขียนเมื่อ 2017/04/15 03:19
แก้ไขล่าสุด 2021/09/28 16:42
คราวก่อนได้พูดถึงว่าเริ่มเปลี่ยนมาใช้อาร์โนลด์แทนเมนทัลเรย์ในมายา 2017 https://phyblas.hinaboshi.com/20170409

ในการฝึกใช้อาร์โนลด์นั้นอย่างแรกที่ต้องทำความเข้าใจก่อนเลยน่าจะเป็นเรื่องของวัสดุ อาร์โนลด์มีวัสดุมาตรฐานที่เรียกว่า aiStandard

ที่จริงจะใช้วัสดุพื้นฐานอย่าง lambert, blinn, phong ไปก็เรนเดอร์ในอาร์โนลด์ได้ไม่มีปัญหา แต่อาจแสดงผลได้ไม่ดั่งใจ มีข้อจำกัด คนจึงมักใช้ aiStandard กันมากกว่า

aiStandard เป็นวัสดุที่สามารถสร้างจำลองผิวสิ่งของที่เหมือนจริงได้โดยการปรับค่าต่างๆได้หลากหลาย

ซึ่งก็อาจเทียบได้กับวัสดุ mia ของเมนทัลเรย์ ซึ่งได้กล่าวถึงไปใน https://phyblas.hinaboshi.com/20170324

อีกทั้งยังมีพรีเซ็ตสำหรับเลือกวัสดุในแบบที่ต้องการได้เหมือนกันด้วย

preset ของ aiStandard มีเยอะกว่าของ mia ด้วย คือมี ๒๑ ในขณะที่ mia มี ๑๘

การสร้าง aiStandard ทำได้โดยเข้าไปที่ไฮเพอร์เชดแล้วเลือกหมวด Shader ใน Arnold



หรือถ้าใช้ไพธอนก็แค่พิมพ์
mc.shadingNode('aiStandard',asShader=1)

เราอาจสร้างปุ่มสำหรับให้สร้าง aiStandard ขึ้นแล้วใส่ให้วัสดุที่เลือกอยู่โดยอัตโนมัติได้ โดยเขียนโค้ดใส่เชลฟ์ตามนี้
sl = mc.ls(sl=1)
ais = mc.shadingNode('aiStandard',asShader=1)
mc.select(sl)
mc.hyperShade(a=ais)

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

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





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

คราวนี้ขอใช้ตัวละครจากเกม sophie no atelier (ソフィーのアトリエ) มาเป็นแบบ ทางขวาคือโซฟี (ソフィー) นางเอกของเรื่อง



ส่วนทางซ้ายตัวเล็กๆ ๔ คน จากซ้ายไปขวา คือ พราฮ์ตา (プラフタ), เลออน (レオン), คอร์เนเรีย (コルネリア) และ มอนิกา (モニカ) ขนาด 1/8



ทั้ง ๔ คนยืนอยู่บนลูกระเบิดหนาม โอเมกาคราฟต์ (オメガクラフト) อาวุธจากเกม escha & logy no atelier (エスカ&ロジーのアトリエ)

(นอกเรื่อง) ทั้ง ๒ เกมเป็นเกมในซีรีส์อาเตอลีเย เคยเล่นมา ๓ เกม และเขียนบันทึกเรื่องย่อไว้ในนี้ https://phyblas.hinaboshi.com/saraban/atelier

ลูกระเบิดนี้สร้างขึ้นเองในมายาโดยใช้ >> โค้ดนี้

ส่วนตัวละครเป็นโมเดล MMD โหลดมาจาก http://xxsnowcherryxx.blogspot.tw/2015/12/atelier-sophie-models-download.html

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

สำหรับแบบในครั้งนี้พวกโซฟีใส่สีตามเท็กซ์เจอร์ ดังนั้นสีจึงไม่เปลี่ยน แต่ค่าอื่นเปลี่ยนหมดดังนั้นจะเห็นความต่างตรงลักษณะพื้นผิว

ส่วนตัวลูกระเบิดหนามจะเปลี่ยนสีไปตามวัสดุทุกครั้ง

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

อนึ่ง ตรงส่วนบริเวณที่มืดๆภาพจะเห็นเป็นจุดๆเหมือนมีคลื่นรบกวน นี่เป็นธรรมชาติของอาร์โนลด์ ที่จริงแก้ได้ด้วยการเพิ่มแซมเปิลในการเรนเดอร์แต่จะใช้เวลานานขึ้นมากจึงปล่อยไว้ เพราะไม่ใช่จุดสำคัญ

ส่วนมุมมืดสามารถเป็นตัวบอกได้ว่าสภาพการสะท้อนของวัสดุนั้นๆดีแค่ไหน เพราะแสงที่เข้าตรงนั้นล้วนเป็นแสงสะท้อน

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

โดยเฉลี่ยแล้วแต่ละภาพใช้เวลาเรนเดอร์ประมาณ ๑๐ นาที



Ai_Balloon ลูกโป่ง




Ai_Cer_Paint สีทารถ (คาดว่าชื่อพิมพ์ผิด ควรเป็น Car Paint)




Ai_Ceramic เซรามิก




Ai_Chocolate ช็อกโกแลต




Ai_Chrome วัสดุเคลือบโครเมียม




Ai_Clay ดินเหนียว




Ai_Glass แก้ว **(ไม่ได้เปิดใช้คอสติกหักเหแสง)




Ai_Gold ทองคำ




Ai_Incandescent_Bulb หลอดเปล่งแสง




Ai_Matt วัสดุผิวด้าน




Ai_Matt_Plastic พลาสติกผิวด้าน




Ai_Metallic_Car_Paint สีทารถโลหะ




Ai_Plaster ปูนปลาสเตอร์




Ai_Plastic_Toy_Soldier ทหารของเล่นพลาสติก




Ai_Shiny_Plastic พลาสติกเรืองรอง




Ai_Silk_Matt_Plastic พลาสติกด้านผ้าไหม




Ai_Soft_Plastic พลาสติกนิ่ม




Ai_Styrofoam โฟมพอลิสไตลิน




Ai_Velvet กำมะหยี่




Ai_Wax ขี้ผึ้ง **(มีการสะท้อนด้านในผิวทำให้เบลอ)




Ai_Wheel_Rims ขอบล้อรถ






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



อ้างอิง
http://cls-studio.co.jp/アーノルドレンダー検証 その15
http://arnold.jp.net/usersguide/rendering-your-first-scene


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

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

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

หมวดหมู่

-- คอมพิวเตอร์ >> 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月

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

ไทย

日本語

中文