ข้อมูลองค์ความรู้โดย
รศ.ดร.ธีระพล เมธีกุล
ตำแหน่ง รองผู้อำนวยการสำนักวิจัย มจพ.

การเรนเดอร์ภาพด้วยคอมพิวเตอร์

ประเภททางด้าน IT หลัก :   Data Management & Analysis
ประเภททางด้าน IT ย่อย :   Render Farms
  ลงข้อมูลเมื่อ 16:23:26 25/05/2010
  Page View (2937) แบ่งปัน

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

ตัวอย่างการให้แสงและเงา ของอาคาร 3 มิติในคอมพิวเตอร์

คำนวณผลออกมาดังรูป

 

หลักการทำงาน

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

ความเป็นมา

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

                  กรณีของกราฟิกส์สามมิติ การสร้างภาพจากแบบจำลองนั้นเป็นกระบวนการที่ทำได้ช้า และกินเวลาในการคำนวณมาก (เช่นขั้นตอนการสร้างภาพยนตร์) ซึ่งสามารถใช้กราฟิกฮาร์ดแวร์เร่งความเร็วการประมวลผลสามมิติแบบทันกาลเข้า ช่วยได้ (เช่นการเพิ่มความเร็วของเกม) ซึ่งคำภาษาอังกฤษว่า"เรนเดอร์"ได้มาจากศัพท์ที่หมายถึงขั้นตอนการลงแสงและ เงาภาพของศิลปินหรือ หรือ อาร์ทิส เรนเดอริ่ง (Artist Rendering)แต่ในทางคอมพิวเตอร์กราฟิกขั้นตอนนี้กินความกว้างกว่าดังที่ได้ อธิบายไว้

การเรนเดอร์แบบไบแอส (Biased) และอันไบแอส (Unbiased)

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

เรนเดอร์ฟาร์ม (Render farm)

               การเรนเดอร์ภาพที่ซับซ้อนมากๆหรือภาพเคลื่อนไหวจะกินเวลานานกว่าภาพที่มี องค์ประกอบง่ายๆหรือภาพเดี่ยวๆ ซอฟต์แวร์ที่ใช้ในการเรนเดอร์จึงอาจได้รับการออกแบบเพิ่มเติมมาเพื่อให้ สามารถแบ่งงานให้กับคอมพิวเตอร์หลายเครื่องหรือเครื่องเดียวแต่หลายหน่วย ประมวลผลกลาง (CPU) ช่วยกันเรนเดอร์เพื่อให้งานเสร็จเร็วยิ่งขึ้น การแบ่งงานนี้อาจเป็นการแบ่งภาพเดียวออกเป็นภาพเล็กๆแล้วกระจายงานให้แต่ละ หน่วยประมวลผล ซึ่งเหมาะกับการเรนเดอร์ภาพนิ่ง หรืออาจแบ่งออกเป็นช่วงเวลาหรือเฟรมสำหรับงานแอนิเมชัน มักเรียกกลุ่มของคอมพิวเตอร์หลายๆเครื่องที่ช่วยกันเรนเดอร์ภาพว่าเรนเดอร์ ฟาร์ม (render farm)

rendering equation

L_o(x, \vec w) = L_e(x, \vec w) + \int_\Omega f_r(x, \vec w', \vec w) L_i(x, \vec w') (\vec w' \cdot \vec n) d\vec w'

               ในตำแหน่งและทิศทางหนึ่งๆ แสงขาออก หรือ outgoing light (Lo) จะเท่ากับผลรวมของแสงที่ถูกปล่อย หรือ emit (Le) กับที่ถูกสะท้อนออกมา โดยแสงที่ถูกสะท้อนออกมาคือผลรวมของผลคูณแสงขาเข้า หรือ incoming light (Li) จากทุกทิศทางกับการสะท้อนของพื้นผิว (bidirectional reflectance distribution function) และมุมขาเข้า


rendering equation อธิบายถึงจำนวนของแสงที่ออกจากจุด x ไปยังมุมมองหนึ่งๆ

 

ที่มา วิกิพีเดีย สารานุกรมเสรี

วิกิพีเดีย สารานุกรมเสรีวิกิพีเดีย สารานุกรมเสรี



องค์ความรู้ที่มีผู้อ่านมากสุด
หลักการเขียนแบบภาพฉาย
เป้าหมายของวิชาเขียนแบบ คือ การศึกษาหลักการและฝึกการใช้มาตรฐานเขียนแบบเทคนิคเบื้องต้น มาตราส่วนที่ใช้ในการเขียนแบบและมาตรฐานของเส้น ตัวอักษร ตัวเลขที่ใช้ในภาษาไทยและภาษาอังกฤษ การกำหนดขนาด การอ่านภาพจากภาพมิติต่างๆ และการสเก๊ตซ์ภาพในเชิงภาพฉายสามด้านจากของจริง การวางรูปแบบ วิธีบอกขนาด การเขียนภาพพิคทอเรียล (PICTORIAL) ภาพฉายและภาพช่วย ตลอดจนการอ่านแบบ และออกแบบเขียนแบบด้วยนวัตกรรมเทคโนโลยีด้วยคอมพิวเตอร์ใช้โปรแกรมเครื่อง มือ Pro/DESKTOP 2003

โดย... รศ.ดร.ธีระพล เมธีกุล

CAD คือ
CAD คือ การใช้คอมพิวเตอร์ช่วยออกแบบและ เขียนแบบ

โดย... รศ.ดร.ธีระพล เมธีกุล

วิศวกรรมเครื่องกล
วิศวกรรมเครื่องกล เป็นวิชาเกี่ยวกับการประยุกต์ใช้คณิตศาสตร์และกฎทางฟิสิกส์เพื่อการประดิษฐ์ การผลิต และการดูแลรักษาระบบเชิงกล

โดย... รศ.ดร.ธีระพล เมธีกุล

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

โดย... รศ.ดร.ธีระพล เมธีกุล

VisioCloudTM แอพลิเคชันสโตร์วีดีโอรายแรกของโลก
Netvizio เปิดตัว VisioCloudTM แอพลิเคชันสโตร์วีดีโอรายแรกของโลก ที่ทุ่มเทเพื่อผู้ประกอบการโทรคมนาคม กลุ่มสื่อสาร บริษัท และภาครัฐ

โดย... รศ.ดร.ธีระพล เมธีกุล