การเรนเดอร์
การเรนเดอร์คือกระบวนการสร้างภาพสองมิติจากคำอธิบายของฉากสามมิติ โดยจำลองว่าแสงมีปฏิสัมพันธ์กับพื้นผิวและเดินทางไปยังกล้องเสมือนจริงได้อย่างไร
Definition
การเรนเดอร์คือการคำนวณภาพพิกเซลโดยการกำหนดค่าความส่องสว่างที่มาถึงกล้องจากเรขาคณิตของฉากที่มองเห็นได้ภายใต้สภาพแสงและวัสดุที่กำหนด สำหรับแต่ละพิกเซล
Scope
ขอบเขตนี้ครอบคลุมอัลกอริทึมการเรนเดอร์หลักสองประเภท ได้แก่ การแรสเตอร์ (rasterization) ซึ่งฉายภาพเรขาคณิตไปยังระนาบภาพ และการติดตามรังสี (ray tracing) ซึ่งติดตามเส้นทางของแสงผ่านฉาก รวมถึงแบบจำลองทางกายภาพและเชิงประจักษ์ของการส่งผ่านแสง การสะท้อนของพื้นผิว และการให้แสงเงาที่กำหนดลักษณะที่จุดต่างๆ ปรากฏ นอกจากนี้ยังครอบคลุมไปถึงไปป์ไลน์แบบเรียลไทม์ที่เร่งด้วยฮาร์ดแวร์ ซึ่งทำให้กราฟิกเชิงโต้ตอบเป็นไปได้
Sub-topics
Core questions
- เมื่อกำหนดฉากที่มีเรขาคณิต แสง และวัสดุ แต่ละพิกเซลควรมีสีอะไร?
- ฟิสิกส์ของการส่งผ่านแสงถูกประมาณค่าอย่างมีประสิทธิภาพเพียงพอสำหรับการคำนวณได้อย่างไร?
- ความสมดุลระหว่างความแม่นยำทางกายภาพและความเร็วในการเรนเดอร์คืออะไร?
- จะสามารถสร้างเอฟเฟกต์แสงทั่วโลก เช่น เงา การสะท้อน และการส่องสว่างทางอ้อมได้อย่างไร?
Key concepts
- การแรสเตอร์และการติดตามรังสี
- สมการการเรนเดอร์
- ความส่องสว่างและความส่องสว่างตกกระทบ
- การส่องสว่างเฉพาะที่และทั่วโลก
- การมองเห็นและการกำจัดพื้นผิวที่ซ่อนอยู่
- การให้แสงเงาและการสะท้อน
Key theories
- สมการการเรนเดอร์
- การส่งผ่านแสงในฉากถูกควบคุมโดยสมการเชิงปริพันธ์ที่แสดงความส่องสว่างที่ออกจากจุดหนึ่งเป็นผลรวมของความส่องสว่างที่ปล่อยออกมาและความส่องสว่างที่สะท้อนกลับเข้ามาที่รวมกันทั่วซีกโลก ซึ่งเป็นรากฐานทางกายภาพที่เป็นหนึ่งเดียวสำหรับการเรนเดอร์ภาพเสมือนจริง
- การส่องสว่างเฉพาะที่เทียบกับการส่องสว่างทั่วโลก
- การส่องสว่างเฉพาะที่ให้แสงเงาแต่ละจุดบนพื้นผิวโดยใช้แหล่งกำเนิดแสงโดยตรงเท่านั้น ในขณะที่การส่องสว่างทั่วโลกยังคำนึงถึงแสงที่สะท้อนระหว่างพื้นผิว ทำให้เกิดเงาที่นุ่มนวล การกระจายสี และ caustics โดยมีค่าใช้จ่ายในการคำนวณที่สูงขึ้นอย่างมาก
Clinical relevance
การเรนเดอร์เป็นรากฐานของเทคนิคพิเศษทางภาพยนตร์และแอนิเมชัน วิดีโอเกม การสร้างภาพสถาปัตยกรรมและผลิตภัณฑ์ ความเป็นจริงเสมือนและความจริงเสริม การสร้างภาพทางวิทยาศาสตร์และการแพทย์ และไปป์ไลน์ข้อมูลสังเคราะห์ที่ใช้ในการฝึกระบบคอมพิวเตอร์วิทัศน์
History
กราฟิกแรสเตอร์ยุคแรกในทศวรรษ 1970 ได้สร้างอัลกอริทึมการซ่อนพื้นผิวและการให้แสงเงาขึ้นมา การติดตามรังสีแบบเรียกซ้ำของ Whitted ในปี 1980 และสมการการเรนเดอร์ของ Kajiya ในปี 1986 ได้กำหนดรูปแบบการส่งผ่านแสง และการเพิ่มขึ้นของ GPU ที่ตั้งโปรแกรมได้ตั้งแต่ปี 2000 เป็นต้นมา ได้นำการเรนเดอร์ตามหลักฟิสิกส์และการเรนเดอร์แบบเรียลไทม์เข้าสู่กระแสหลัก
Debates
- การแรสเตอร์เทียบกับการติดตามรังสีสำหรับกราฟิกเรียลไทม์
- การแรสเตอร์ครองการเรนเดอร์แบบโต้ตอบมานานเนื่องจากความเร็ว ในขณะที่การติดตามรังสีให้เงา การสะท้อน และการส่องสว่างทั่วโลกที่ถูกต้องตามธรรมชาติมากกว่า การเร่งความเร็วการติดตามรังสีด้วยฮาร์ดแวร์ได้ลดช่องว่างด้านประสิทธิภาพลง แต่ยังไม่ปิดสนิท ทำให้ไปป์ไลน์แบบไฮบริดเป็นที่นิยม
Key figures
- James Kajiya
- Turner Whitted
- Edwin Catmull
Related topics
Seminal works
- kajiya1986
- pharr2016
- hughes2013
Frequently asked questions
- ความแตกต่างระหว่างการแรสเตอร์และการติดตามรังสีคืออะไร?
- การแรสเตอร์ฉายภาพเรขาคณิตของฉากลงบนภาพและเติมพิกเซลที่ครอบคลุม ซึ่งทำได้รวดเร็ว ในขณะที่การติดตามรังสีจะติดตามรังสีจากกล้องเข้าไปในฉากเพื่อค้นหาสิ่งที่แต่ละพิกเซลมองเห็น ซึ่งจับภาพการสะท้อน การหักเห และเงาได้อย่างเป็นธรรมชาติมากกว่า แต่มีค่าใช้จ่ายสูงกว่า
- ทำไมการเรนเดอร์ภาพเสมือนจริงจึงใช้เวลานานมาก?
- การจำลองแสงที่สะท้อนหลายครั้งระหว่างพื้นผิวจำเป็นต้องประเมินปริพันธ์ที่มีมิติสูง ซึ่งมักจะทำโดยการติดตามเส้นทางแสงแบบสุ่มหลายล้านเส้นทางและหาค่าเฉลี่ย ดังนั้นการลดสัญญาณรบกวนให้อยู่ในระดับที่ยอมรับได้จึงมีค่าใช้จ่ายในการคำนวณสูง