คำถามติดแท็ก physically-based

2
ความแตกต่างแบบกระจายและแบบ specular-based
วิธีการแรเงาแบบคลาสสิคในคอมพิวเตอร์กราฟิกแบบเรียลไทม์คือการรวมกันของคำศัพท์การกระจาย (Lambertian) และคำที่มีความหมายซึ่งอาจเป็นไปได้ว่า Phong หรือ Blinn-Phong ขณะนี้มีแนวโน้มไปสู่การเรนเดอร์เชิงกายภาพดังนั้นโมเดลวัสดุในเครื่องยนต์เช่นFrostbite , Unreal EngineหรือUnity 3D BRDF เหล่านี้มีการเปลี่ยนแปลง ตัวอย่างเช่น (อันที่เป็นสากลในตอนนั้น) Unreal Engine ล่าสุดยังคงใช้การแพร่กระจายของ Lambertian แต่เมื่อใช้ร่วมกับรูปแบบ microfacet ของ Cook-Torrance สำหรับการสะท้อนแบบ specular (โดยเฉพาะการใช้ GGX / Trowbridge-Reitz ) นอกจากนี้ยังมีการใช้ค่า 'Metalness' เพื่อแยกความแตกต่างระหว่างตัวนำและอิเล็กทริก สำหรับ dielectrics การกระจายจะใช้สีโดยใช้อัลเบโดของวัสดุในขณะที่ specular ไม่มีสีเสมอ สำหรับโลหะนั้นไม่ได้ใช้การแพร่กระจายและเทอม specular จะถูกคูณกับอัลเบโดของวัสดุ เกี่ยวกับวัสดุทางกายภาพในโลกแห่งความเป็นจริงการแบ่งแยกอย่างเข้มงวดระหว่างการแพร่กระจายและการแพร่กระจายนั้นมีอยู่หรือไม่และหากเป็นเช่นนั้นมันมาจากที่ไหน? ทำไมสีหนึ่งในขณะที่สีอื่น ๆ ไม่? ทำไมคอนดักเตอร์ถึงประพฤติแตกต่างกัน?

3
การแรเงาทางกายภาพ - แสงรอบข้าง / โดยอ้อม
ฉันใช้เครื่องมือติดตามเส้นทางร่างกายหลังจากเรียน PBRT โดย M. Pharr และ G. Humphreys ตอนนี้ฉันกำลังพยายามใช้การเรนเดอร์แบบกราฟิกกับกราฟิกแบบเรียลไทม์โดยใช้ OpenGL ES (ในแอปพลิเคชัน iPhone) ฉันต้องการเริ่มใช้ Oren-Nayar และ Cook-Torrance เป็นแบบกระจายและแบบพิเศษ BRDF แต่ฉันมีปัญหา: ฉันจะจำลองแสงทางอ้อมได้อย่างไร ในเส้นทางติดตาม (เช่นเดียวกับที่มีอยู่ใน pbrt) แสงทางอ้อม / รอบจะได้รับ "อัตโนมัติ" จากอัลกอริทึมการติดตามเส้นทางตามที่เป็นไปตามเส้นทางของรังสีแสงโดยคำนึงถึงแสงทางตรงและทางอ้อม ฉันจะสร้างแบบจำลองแสงทางอ้อมในการเรนเดอร์เชิงกายภาพที่เขียนใน OpenGL ES ได้อย่างไรโดยใช้กราฟิกคอมพิวเตอร์ตามเวลาจริง

3
Harmonics & Light Probes ของ Spherical คืออะไร
สิ่งที่เป็นทรงกลมฮาร์มอนิและแสง Probes ? คอมพิวเตอร์กราฟิกมีประโยชน์อย่างไร? พวกเขาทำอะไรกันแน่ ฉันได้ยินคำว่าฮาร์โมนิกส์ทรงกลมและแสงโพรบทุกที่ตั้งแต่งานนำเสนอ siggraph ไปจนถึงบล็อกโพสต์ เมื่อเร็ว ๆ นี้ Matt Pettineo โพสต์บล็อกซีรี่ย์ 6 ตอนแต่ฉันก็ยังไม่เข้าใจว่ามันคืออะไร เป็นอีกวิธีในการปรับปรุงแสงโดยรอบหรือไม่?

4
สำหรับคณิตศาสตร์เชดเดอร์เหตุใด RGB เชิงเส้นจึงควรรักษาขอบเขตของ sRGB ไว้
sRGB มักจะถูกเปรียบเทียบกับ "linear RGB" รูปภาพจะถูกเก็บไว้ในดิสก์และส่งผ่านไปยังจอแสดงผลในsRGBซึ่งมีความเข้มสม่ำเสมอโดยประมาณ คณิตศาสตร์ Shader ทำในเชิงเส้น RGBซึ่งเป็นรูปแบบทางกายภาพในความเข้ม สามารถใช้การแก้ไขแกมมาเพื่อแปลงระหว่างสองแบบได้ ตอนนี้ sRGB มีมาตรฐานที่ระบุช่วงสีของสีโดยบอกว่าสีแดงบริสุทธิ์สีเขียวสีน้ำเงินและสีขาวอยู่ตรงไหน แต่ไม่มีมาตรฐานที่สอดคล้องกันสำหรับ "เชิงเส้น RGB" สามเหลี่ยมใด ๆบนแผนภาพ chromaticity อาจกล่าวได้ว่าเป็นเส้นตรงและแน่นอนมีขอบเขตที่รู้จักกันดีหลายอย่างให้เลือก: ในทางปฏิบัติเมื่อเราพูดว่า "linear RGB" เราหมายถึง "sRGB โดยไม่มีการแก้ไขแกมม่า" (นี่คือสิ่งที่เรากำลังทำเมื่อเราใช้การแก้ไขแกมม่า sRGB เป็นขั้นตอนหลังการประมวลผลขั้นสุดท้าย แต่ไม่สนใจช่องว่างสีสำหรับส่วนที่เหลือของการเรนเดอร์การแสดงผล) แต่ทำไมที่ RGB Gamut หนึ่งที่ถูกต้องที่จะใช้สำหรับการแก้ไขและแสงคำนวณ? ดูเหมือนว่าโดยพลการ หากมีสิ่งใดเราจะไม่ต้องการใช้ช่วงเสียงที่ใหญ่ที่สุดเท่าที่จะเป็นไปได้สำหรับการคำนวณภายในและจากนั้นคลิปหรือปรับขนาดสีให้กับช่วงเสียงของอุปกรณ์แสดงผลในตอนท้าย แสง RGB นั้นจะใกล้เคียงกันหรือไม่ดังนั้นจึงไม่สำคัญว่าเราจะเลือกโทนเสียงใดและเราอาจเลือกแสงที่ใกล้เคียงกับที่หน้าจอรองรับมากที่สุด? มันเป็นเพียงความประมาท? หรือการคำนวณในขอบเขตที่แตกต่างกันเหล่านี้ให้ผลลัพธ์ที่เหมือนกันจริงหรือไม่?

3
แก้ไขข้อกำหนดเฉพาะของโมเดล Cook-Torrance / Torrance-Sparrow
ในขณะที่ฉันได้ทำการวิจัยบางอย่างเกี่ยวกับหัวข้อการแสดงผลทางกายภาพ โมเดลสะท้อนหนึ่งที่ถูกกล่าวถึงซ้ำแล้วซ้ำอีกคือโมเดลCook-Torrance / Torrance-Sparrow ดูเหมือนว่าในการกล่าวถึงหรือคำอธิบายของรุ่นนี้ในแต่ละครั้งจะใช้รูปแบบที่แตกต่างกันของคำศัพท์เฉพาะ รุ่นที่ฉันพบคือ: FD Gπ( N⃗ ⋅ V⃗ ) ( N⃗ ⋅ ล⃗ )FDGπ(N→⋅V→)(N→⋅L→){\frac {FDG}{\pi ({\vec N}\cdot {\vec V})({\vec N}\cdot {\vec L})}} FD G4 ( N⃗ ⋅ V⃗ ) ( N⃗ ⋅ ล⃗ )FDG4(N→⋅V→)(N→⋅L→){\frac {FDG}{4 ({\vec N}\cdot {\vec V})({\vec N}\cdot {\vec L})}} FD G( N⃗ ⋅ V⃗ …

2
วิธีการสร้างแบบจำลองวัตถุประสงค์เลนส์ / กล้องที่เหมาะสมสำหรับการติดตามเส้นทาง?
ฉันได้เขียนเส้นทางตามรอยเล็ก ๆ หลังจากเรียนรู้และทดลองกับเจ้าตัวเล็ก สิ่งเดียวที่ฉันไม่ได้เขียน (และเข้าใจ) ตัวฉันเองก็คือวิธีการคำนวณและยิงรังสีเริ่มต้นจากกล้อง ฉันได้รับหลักการที่ถูกต้อง แต่ฉันกำลังมองหาแหล่งข้อมูลที่อธิบายวิธีการ: คำนวณทิศทางเริ่มต้นของรังสี สร้างแบบจำลองเลนส์จริง (ตรงข้ามกับกล้องรูเข็ม) คาดว่าจะมีเอฟเฟกต์เช่นระยะชัดลึกหรือไม่ ไม่จำเป็นต้องใช้คณิตศาสตร์และฟิสิกส์อันทันสมัย ​​แต่ตกลงหากอธิบายอย่างละเอียด

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

1
การแสดงคลื่นของมหาสมุทร
ฉันจะสร้างคลื่นสำหรับตัวน้ำด้วยคลื่นสีขาวและโฟมและความเข้มของคลื่นได้อย่างไร พื้นผิวเป็นแบบตาข่ายที่มีแผนที่ปกติหรือไม่? มีสูตรสำหรับการสร้างสิ่งนั้นหรือไม่? มีบางอย่างที่คล้ายกันเพื่อกำหนดตำแหน่งและวิธีการแสดงผลสีขาวหรือไม่ ฉันเจอบทความนี้แต่มันไม่ค่อยชัดเจน ในบทความนี้ฉันเข้าใจส่วนที่พูดถึงการสร้างคลื่น มีส่วนเฉพาะสำหรับ whitecaps และโฟมและนำเสนอสูตรในการสร้าง แต่คุณจะนำไปใช้กับส่วนของน้ำที่ต้องการได้อย่างไร จากสิ่งที่ฉันสังเกตเห็นมันแสดงให้เห็นว่า F เป็นพื้นที่ที่ต้องใช้ไวท์แคปบางคนสามารถอธิบายได้ว่ามันทำงานอย่างไร

1
การชดเชยการสูญเสียพลังงานในรุ่น BSDF ของไมโครฟอร์แมตแบบกระจาย
แบบจำลองพื้นผิวที่ใช้ไมโครฟิล์มแบบกระจัดกระจายเช่นTorrance-Sparrow BRDFดั้งเดิมหรือแบบจำลองที่ได้มาเช่นBSDF สำหรับพื้นผิวอิเล็กทริกแบบหยาบโดย Walter et al ละเลยการสะท้อนแสงระหว่าง microfacets ซึ่งส่งผลให้สูญเสียพลังงานทำให้เกิดความมืดโดยเฉพาะอย่างยิ่งเมื่อค่าความหยาบสูงขึ้น สามารถแสดงปัญหาได้อย่างง่ายดายโดยใช้การทดสอบเตาหลอม ภาพต่อไปนี้แสดงพฤติกรรมการใช้ไมโครฟิล์มนำไฟฟ้า BRDF ของฉันโดยใช้แบบจำลอง Smith และการแจกแจง GGX สำหรับพารามิเตอร์ความหยาบจาก 0.2 ถึง 1.0 (ค่าสัมประสิทธิ์ Fresnel ถูกตั้งค่าเป็น 1 ที่นี่เพื่อทำให้ปัญหาง่ายขึ้น): การทดสอบเตาเผาของอิเล็กทริกหยาบ (IoR 1.51) BSDF โดยใช้แบบจำลอง Smith และการกระจายไมโครฟิล์ม GGX สำหรับพารามิเตอร์ความหยาบตั้งแต่ 0.2 ถึง 1.0: Eric Heitz และคณะ มีเพียงแค่เมื่อเร็ว ๆ นี้นำเสนอรูปแบบหลายกระเจิงซึ่งจะช่วยแก้ปัญหาคล้ำโดยการแก้ปฏิสัมพันธ์แสงสมบูรณ์ แต่มีปัญหาประสิทธิภาพการทำงานเนื่องจากลักษณะสุ่มของกิจวัตรประจำวันการประเมินผลของมันเป็น metioned โดย Heitz ตัวเองอยู่ในฟอรั่มลักซ์เร็นเดอร์ มีวิธีการชดเชยที่เป็นที่รู้จักสำหรับการกู้คืนพลังงานที่สูญเสียไปของแบบจำลองการกระเจิงเดี่ยวหรือไม่? ไม่จำเป็นต้องถูกต้องตามร่างกาย …

3
ภาพ HDR แบบ 16 บิตครึ่งลอยเป็นพื้นผิว (กระจาย / อัลเบโด้)?
ดังนั้นฉันจึงคิดถึงเรื่องนี้ซักพักหนึ่งแล้วลอง google เพื่อหาคำตอบ แต่ก็ไม่ประสบความสำเร็จ หากพื้นผิวทั้งหมดของคุณเป็นภาพ 8 บิต LDR เช่น JPEG ไม่สามารถทำให้เกิดความขัดแย้งกับการควบคุมการเปิดรับแสง / การทำแผนที่โทนเมื่อแสดงผล นั่นคือถ้าคุณปรับการแสดงผลการรับแสงของภาพของคุณที่ควรเปิดเผยรายละเอียดในพื้นผิวที่ไม่ได้มีจริงเพราะพวกเขาถูกยึดโดยช่วงไดนามิกต่ำ ดังนั้นจึงไม่มีเหตุผลที่จะมีพื้นผิวเป็นภาพ HDR ที่บันทึกเป็น. exr ในพื้นที่สีเชิงเส้นด้วย 16 บิตครึ่งลอยเพื่อให้ได้สีที่ดี (32 บิต "เต็ม" ลอยอาจเกินหรือไม่) เพื่อให้มีรายละเอียดและค่าสีที่ถูกต้องฉันอาจคิดว่ามีผลกระทบต่อ GI และคำนวณการตกเลือดของสีอย่างไร หรือมันไม่จำเป็นเพียงเพราะผลลัพธ์สุดท้ายของการเรนเดอร์ที่เราต้องการนั้นอาจจะคล้ายกับระดับการเปิดรับแสงของพื้นผิวเมื่อถ่ายภาพด้วยวิธีใด? และเนื่องจากกล้องส่วนใหญ่ถ่ายภาพที่ 12-14 บิตคุณจะต้องใช้การเปิดรับแสงหลาย ๆ พื้นผิวและทำงานพิเศษทั้งหมดเพื่อรวมเข้าด้วยกันเป็นหนึ่ง HDRI แก้ไข: เพื่อความกระจ่างฉันส่วนใหญ่สนใจในเรื่องนี้จากมุมมองการเรนเดอร์ภาพถ่ายจริงด้วยเรย์เรนเดอร์เรกเกอร์ (เช่นจิตเรย์, วีเรย์, อาร์โนลด์ ฯลฯ ) ด้วยการจำลองแสงเต็มรูปแบบ เอ็นจินเกมแบบเรียลไทม์

2
พลังงานทั้งหมดที่ปล่อยออกมาของแสงพื้นที่กระจาย
ฉันกำลังอ่านหนังสือการแสดงผลทางกายภาพ (Pharr, Humphreys) ในบทที่เกี่ยวกับไฟพวกเขาพูดคุยเกี่ยวกับการประมาณพลังงานรวมที่ปล่อยออกมาของแสงชนิดต่างๆ intensity * 4 * piยกตัวอย่างเช่นการรวมพลังไฟจุดคือ ที่นี่ 4pi แสดงถึงมุมที่เป็นของแข็งทั่วทั้งทรงกลม เรื่องนี้ทำให้รู้สึกถึงฉันเพราะความเข้ม * solid angle = power (หรือฟลักซ์การแผ่รังสีถ้าคุณต้องการ) คุณสามารถเห็นสิ่งนี้โดยหน่วยเช่นกัน ความเข้มคือ W / sr และมุมที่เป็นของแข็งคือ sr ดังนั้นW/sr * sr = Wและกำลังวัดเป็นวัตต์ มันตรวจสอบ DiffuseAreaLightแต่ผมไม่เข้าใจการคำนวณที่สอดคล้องกันสำหรับ emitted radiance * area * piจากความเข้าใจของฉันของหนังสือเล่มนี้พวกเขาคำนวณพลังงานทั้งหมดที่ปล่อยออกมาจากแสงกระจายเป็นพื้นที่ เนื่องจากหน่วยของความกระจ่างเป็นพื้นที่คูณ W / (sr * m ^ 2) ให้ W / …

1
การสร้างแบบจำลองการทดลองกรีดสองครั้งของ Young
การทดลองกรีดแบบสองทางของ Youngนั้นง่ายมากในการตั้งค่าและง่ายต่อการอธิบาย แต่มันเป็นตัวอย่างของการเลี้ยวเบนและการแทรกสอด เป็นเรื่องตรงไปตรงมาที่จะประมาณผลลัพธ์โดยใช้พื้นผิว แต่ต้องรู้ล่วงหน้าว่าผลลัพธ์ควรเป็นอะไร สำหรับการตั้งค่าโดยพลการโดยที่ไม่ทราบจำนวนและการจัดแบ่งช่องล่วงหน้ามีอัลกอริธึมที่มีอยู่สำหรับการสร้างแบบจำลองเอฟเฟกต์เพื่อสร้างภาพผลลัพธ์ที่ถูกต้องหรือไม่? ถ้าไม่เป็นเช่นนั้นแบบจำลองใดที่จำเป็นต้องมีเพื่อให้สามารถสร้างเอฟเฟกต์เหล่านี้ได้อย่างแม่นยำ การติดตามรังสีสามารถปรับให้ใช้รังสีที่มีข้อมูลเพิ่มเติมหรือจะต้องใช้วิธีการใหม่ทั้งหมดหรือไม่?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.