คอมพิวเตอร์ Windows อินเทอร์เน็ต

การแสดงผลแบบกระจาย เรนเดอร์คืออะไร? ขนาดเรนเดอร์ในเกมคืออะไร

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

คำนิยาม

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

กระบวนการ

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

คอมพิวเตอร์กราฟฟิค

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

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

วิธีการ

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

การติดตามทำหน้าที่เป็นการสร้างวิธีการเรนเดอร์จำนวนหนึ่ง การแสดงรังสีของแสงทั้งหมดที่ส่องสว่างให้กับฉากนั้นไม่สามารถทำได้ ต้องใช้เวลามากเกินไปหากไม่คำนึงถึงการประมาณหรือการแปลงเป็นดิจิทัล

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

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

อีกสองวิธีคือ ray tracing หรือ path tracing ตัวเลือกแรกคล้ายกับตัวเลือกก่อนหน้า แต่เมื่อลำแสงกระทบกับวัตถุ มันจะกระจายออกไปอีก ดังนั้นรังสีอีกสามดวงจึงปรากฏขึ้น แต่ละรายการมีส่วนทำให้สีของพิกเซลมีลักษณะเฉพาะ นี่คือลักษณะการสะท้อน เงา และการหักเหของแสง วิธีนี้ทำให้ภาพดูสมจริง แม้ว่าจะถือว่าใช้ทรัพยากรมากก็ตาม การติดตามเส้นทางคล้ายกับวิธีการข้างต้น ข้อแตกต่างเพียงอย่างเดียวคือกฎทางกายภาพของการแพร่กระจายของแสงมีความชัดเจนมากขึ้น

มันทำงานอย่างไร?

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

การตั้งค่า

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

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

โปรแกรม

ตัวแสดง VRay เป็นระบบทั้งหมดสำหรับการเรนเดอร์ ปรากฏเมื่อ พ.ศ. 2543 สามารถติดตั้งเป็นปลั๊กอินได้หลายโปรแกรม กลุ่มหลัง ได้แก่ Cinema 4D, Rhino และ Autodesk 3ds Max ระบบนี้สามารถใช้เป็นโมดูลสำหรับ Blender

Render 3D Max หรือ Autodesk 3ds Max เป็นโปรแกรมมัลติฟังก์ชั่นที่ไม่เพียงแต่แสดงภาพเท่านั้น แต่ยังสร้างและแก้ไขกราฟิกสามมิติอีกด้วย จัดการแอนิเมชั่นได้อย่างง่ายดาย ขณะนี้เป็นที่นิยมอย่างมาก เนื่องจากมีฟังก์ชันการทำงานที่หลากหลายสำหรับการทำงานกับภาพ 3 มิติ มีเครื่องมือมากมายสำหรับศิลปินและผู้ที่ทำงานด้านมัลติมีเดีย

Vegas Pro

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

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

การแสดงผลมักส่งผลให้เกิดข้อผิดพลาดในการส่งออกวิดีโอ หากคุณต้องการมีส่วนร่วมอย่างจริงจัง คุณจะต้องศึกษากระบวนการ เทคโนโลยี และวิธีการโดยละเอียด เพื่อลดข้อผิดพลาดให้เหลือน้อยที่สุด

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

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

เรนเดอร์คืออะไร? (สำหรับโปรแกรมเมอร์)

ดังนั้น Wikipedia จึงให้คำจำกัดความต่อไปนี้: Rendering เป็นคำศัพท์ในคอมพิวเตอร์กราฟิกที่อ้างถึงกระบวนการในการรับรูปภาพจากแบบจำลองโดยใช้โปรแกรมคอมพิวเตอร์

นิยามได้ค่อนข้างดี มาต่อกันเลยดีกว่า การแสดงผลคือการแสดงภาพ ในคอมพิวเตอร์กราฟิก ทั้งศิลปิน 3 มิติและโปรแกรมเมอร์เข้าใจการเรนเดอร์ว่าเป็นการสร้างภาพแบน - ภาพบิตแมปดิจิทัลจากฉาก 3 มิติ
นั่นคือคำตอบที่ไม่เป็นทางการสำหรับคำถามของเรา "What is rendering?" - นี่คือการรับภาพ 2 มิติ (ไม่สำคัญว่าจะอยู่บนหน้าจอหรือในไฟล์) โปรแกรมคอมพิวเตอร์ที่แสดงผลเรียกว่าเครื่องแสดงภาพหรือเครื่องแสดงผล

แสดงผล

ในทางกลับกัน คำว่า "render" มักหมายถึงผลลัพธ์ของการแสดงผล แต่บางครั้งกระบวนการก็เรียกเหมือนกัน (ในภาษาอังกฤษคำกริยา - การแปลถูกโอนเป็นภาษารัสเซียซึ่งสั้นกว่าและสะดวกกว่า) คุณอาจเคยเจอรูปภาพต่างๆ บนอินเทอร์เน็ตพร้อมคำบรรยายว่า "Guess the render or photo?" ซึ่งหมายความว่าการสร้างภาพ 3 มิติหรือภาพถ่ายจริง (คอมพิวเตอร์กราฟิกมีความก้าวหน้ามากจนบางครั้งคุณไม่สามารถเข้าใจได้)

ประเภทของการแสดงผล

ขึ้นอยู่กับความเป็นไปได้ในการคำนวณแบบคู่ขนานมี:

  • การเรนเดอร์แบบมัลติเธรด - การคำนวณดำเนินการพร้อมกันในหลายเธรด บนคอร์โปรเซสเซอร์หลายตัว
  • การเรนเดอร์แบบเธรดเดียว - ในกรณีนี้ การคำนวณจะดำเนินการในเธรดเดียวแบบซิงโครนัส

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

สาระสำคัญของวิธีการคืออะไร? rasterization และ ray tracing ทำงานอย่างไร เริ่มต้นด้วยการแรสเตอร์

แรสเตอร์แบบจำลองหลายเหลี่ยม

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

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

*บางทีบทความถัดไปจะเป็นการวิเคราะห์ท่อกราฟิกที่ฉันสัญญาไว้ เขียนความคิดเห็นว่าจำเป็นต้องมีการวิเคราะห์ดังกล่าวหรือไม่ มันจะเป็นประโยชน์และเป็นประโยชน์สำหรับฉันที่จะรู้ว่ามีคนสนใจทั้งหมดนี้มากแค่ไหน ฉันสร้างหน้าแยกต่างหากซึ่งมีรายการหัวข้อที่กล่าวถึงและหัวข้อในอนาคต -

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

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

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

และโปรแกรมเมอร์กราฟิกต้องคิดค้นเทคนิคต่างๆ เพื่อให้ได้ความใกล้ชิดกับความสมจริงของแสง เมื่อต้องการทำเช่นนี้ โปรแกรม shader จะใช้พื้นผิวที่คำนวณข้อมูลการกระเจิงของแสง การสะท้อน เงา และข้อมูลการกระเจิงใต้ผิวดินล่วงหน้า

ในทางกลับกัน การติดตามรังสีทำให้สามารถคำนวณข้อมูลนี้ได้ แต่ต้องเสียค่าใช้จ่ายในการคำนวณมากขึ้น ซึ่งไม่สามารถทำได้ในขณะใช้งาน มาดูกันว่าวิธีนี้คืออะไร

การติดตามรังสี การติดตามรังสี)

จำเกี่ยวกับ corpuscular wave dualism ได้หรือไม่? ให้ฉันเตือนคุณว่าแก่นแท้คืออะไร: แสงทำตัวเป็นคลื่นและเป็นกระแสของอนุภาค - โฟตอน ดังนั้นการติดตาม (จากภาษาอังกฤษ "ร่องรอย" เพื่อติดตามเส้นทาง) จึงเป็นการจำลองรังสีของแสงที่พูดคร่าวๆ แต่การติดตามแสงทุกดวงในฉากนั้นไม่สามารถทำได้และใช้เวลานานอย่างไม่อาจยอมรับได้

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

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

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

เรนเดอร์สำหรับศิลปิน

แต่การเรนเดอร์ไม่ได้เป็นเพียงการเรนเดอร์ซอฟต์แวร์เท่านั้น! ศิลปินที่มีฝีมือก็ใช้มันเช่นกัน แล้วการแสดงจากมุมมองของศิลปินคืออะไร? เช่นเดียวกับโปรแกรมเมอร์ ศิลปินแนวความคิดเท่านั้นที่ทำเอง มือ. เช่นเดียวกับการเรนเดอร์ในวิดีโอเกมหรือ V-ray ใน Maya ศิลปินคำนึงถึงแสง การกระเจิงใต้ผิวดิน หมอก และปัจจัยอื่นๆ ที่ส่งผลต่อสีสุดท้ายของพื้นผิว

ตัวอย่างเช่น รูปภาพด้านบนทำงานเป็นขั้นตอนในลักษณะนี้: ภาพร่างหยาบ - เส้น - สี - ปริมาณ - วัสดุแสดงผล

วัสดุแสดงผลรวมถึงพื้นผิว งานแสงสะท้อน - โลหะเช่น ส่วนใหญ่มักจะเป็นพื้นผิวเรียบมากที่มีแสงสะท้อนที่ชัดเจนบนขอบ นอกจากนี้ ศิลปินยังต้องเผชิญกับการแรสเตอร์ของกราฟิกเวกเตอร์ ซึ่งใกล้เคียงกับการสร้างแรสเตอร์ของโมเดล 3 มิติ

การแรสเตอร์กราฟิกแบบเวกเตอร์

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

อ่านเพิ่มเติม

  • - คำอธิบายง่ายๆ ของเฉดสีที่ซับซ้อนและน่ากลัว
  • - ภาพรวมที่เป็นประโยชน์ของอนุภาคและบทแนะนำวิดีโอเกี่ยวกับการสร้างเอฟเฟกต์พิเศษใน Unity3d

Afterword

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

ทางเลือกของบรรณาธิการ

การเรนเดอร์คืออะไร (เรนเดอร์) และกระบวนการนี้มีฟีเจอร์อะไรบ้าง

คอมพิวเตอร์กราฟฟิค- ส่วนสำคัญของทรงกลมและสภาพแวดล้อมเกือบทุกชนิดที่บุคคลโต้ตอบ

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

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

คำนิยาม

การแสดงผล (หรือที่เรียกว่าการเรนเดอร์) เป็นหนึ่งในกระบวนการสุดท้ายในการประมวลผลและเรนเดอร์โมเดลคอมพิวเตอร์สามมิติเชิงปริมาตร

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

นอกจากนี้ บางครั้งในขั้นตอนนี้ ในกระบวนการ "รวบรวม" โมเดล คุณสามารถใช้องค์ประกอบสามมิติบางอย่างได้

กระบวนการนี้ค่อนข้างซับซ้อนและใช้เวลานาน มันขึ้นอยู่กับการคำนวณต่าง ๆ ที่ดำเนินการทั้งโดยคอมพิวเตอร์และโดยตัวศิลปินเอง (ในระดับที่น้อยกว่า)

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

พวกเขาทำให้ฮาร์ดแวร์ของคอมพิวเตอร์มีภาระอย่างมาก

ขอบเขตการใช้งาน

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

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

การออกแบบคอมพิวเตอร์ใช้ใน:

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

ในขณะเดียวกัน กระบวนการนี้ก็ถือเป็นที่สิ้นสุด

อาจเป็นสิ่งสุดท้ายหรือสุดท้ายเมื่อออกแบบแบบจำลอง

โปรดทราบว่าการเรนเดอร์มักไม่เรียกว่ากระบวนการคอมไพล์ตัวแบบเอง แต่เป็นผลของมัน - แบบจำลองคอมพิวเตอร์สามมิติที่เสร็จสิ้นแล้ว

เทคโนโลยี

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

ขั้นตอนนี้มาพร้อมกับการคำนวณทางเทคนิคที่ซับซ้อนซึ่งดำเนินการโดยโปรแกรมเอ็นจิ้น - ข้อมูลทางคณิตศาสตร์เกี่ยวกับฉากและวัตถุในขั้นตอนนี้จะถูกแปลเป็นภาพสองมิติสุดท้าย

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

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

ชนิด

ขึ้นอยู่กับลักษณะของเทคโนโลยีและงาน กระบวนการดังกล่าวแบ่งออกเป็นสองประเภทหลัก - นี่คือการเรนเดอร์แบบเรียลไทม์และการเรนเดอร์เบื้องต้น

แบบเรียลไทม์

ประเภทนี้แพร่หลายโดยเฉพาะในเกมคอมพิวเตอร์

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

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

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

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

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

ทั้งหมดนี้ กระบวนการปรับให้เหมาะสมมีบทบาทสำคัญมาก กล่าวคือ มาตรการที่นักพัฒนาใช้เพื่อลดภาระของเอ็นจิ้นและเพิ่มประสิทธิภาพระหว่างเกม

ด้วยเหตุผลนี้ การเรนเดอร์ที่ราบรื่น อย่างแรกเลย แมปพื้นผิวและการลดความซับซ้อนของกราฟิกที่ยอมรับได้

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

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

เบื้องต้น

ประเภทนี้ใช้ในสถานการณ์ที่การโต้ตอบไม่สำคัญ

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

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

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

ที่มาของคำว่า คำว่า "render" (หรือ "rendering") มาจากภาษาอังกฤษเหมือนกับที่เกี่ยวข้องกับเทคโนโลยี IP มาก มาจากภาษาฝรั่งเศส rendre แปลว่า "ทำ", "ให้", "คืน", "คืน" รากที่ลึกกว่าของกริยานี้ย้อนกลับไปที่ภาษาละตินโบราณ: re เป็นคำนำหน้าหมายถึง "กลับ" และกล้าคือ "ให้" ดังนั้น - หนึ่งในความหมายของคำศัพท์สมัยใหม่ การแสดงผลยังเป็นกระบวนการในการสร้างภาพระนาบขึ้นใหม่โดยใช้แบบจำลองสามมิติที่มีข้อมูลเกี่ยวกับคุณสมบัติทางกายภาพของวัตถุ เช่น รูปร่าง พื้นผิว การส่องสว่าง และอื่นๆ

การแสดงผล(การเรนเดอร์ภาษาอังกฤษ - “การแสดงภาพ”) ในคอมพิวเตอร์กราฟิกเป็นกระบวนการในการรับภาพจากแบบจำลองโดยใช้โปรแกรมคอมพิวเตอร์

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

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

บ่อยครั้งในคอมพิวเตอร์กราฟิก (ศิลปะและเทคนิค) การเรนเดอร์เป็นที่เข้าใจกันว่าเป็นการสร้างภาพแบน (รูปภาพ) ตามฉาก 3 มิติที่พัฒนาขึ้น รูปภาพเป็นบิตแมปดิจิทัล คำพ้องความหมายในบริบทนี้คือการแสดงภาพ

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

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

คุณสมบัติการแสดงผล

จะต้องใช้เวลานานในการทำให้ร่างเบื้องต้นสมบูรณ์ - ระยะเวลาในการประมวลผลภาพที่ซับซ้อนด้วยคอมพิวเตอร์อาจถึงหลายชั่วโมง ในช่วงเวลานี้มี:

  • ระบายสี
  • รายละเอียดขององค์ประกอบขนาดเล็ก
  • การปรับแต่งเอฟเฟกต์แสง - การสะท้อนของลำธาร เงา และอื่นๆ
  • การแสดงสภาพภูมิอากาศ
  • การดำเนินการรายละเอียดอื่น ๆ เพื่อเพิ่มความสมจริง

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

ใครเป็นคนแสดง?

อาชีพที่พบบ่อยที่สุดที่คุณต้องรู้วิธีการเรนเดอร์คือ "นักออกแบบ 3D" ผู้เชี่ยวชาญประเภทนี้สามารถสร้างได้ทุกอย่าง ตั้งแต่แบนเนอร์ระดับประถมศึกษาไปจนถึงโมเดลเกมคอมพิวเตอร์

และแน่นอน นักออกแบบ 3D ไม่เพียงแต่เกี่ยวข้องกับการเรนเดอร์เท่านั้น แต่ยังรวมถึงขั้นตอนก่อนหน้าทั้งหมดในการสร้างกราฟิก 3 มิติ ได้แก่ การสร้างแบบจำลอง การสร้างพื้นผิว การจัดแสง แอนิเมชั่น และหลังจากนั้น - การสร้างภาพข้อมูลเท่านั้น

อย่างไรก็ตาม นักออกแบบ 3D ไม่ได้ทำงานกับสูตรทางคณิตศาสตร์และฟิสิกส์ โดยอธิบายไว้ในภาษาการเขียนโปรแกรม ทั้งหมดนี้ทำเพื่อเขาโดยโปรแกรมคอมไพเลอร์ (3D Max, Maya, Cinema 4D, Zbrush, Blender ฯลฯ ) และไลบรารีคุณสมบัติทางกายภาพที่เขียนไว้แล้ว (ODE, Newton, PhysX, Bullet เป็นต้น)

แยกจากกัน ในบรรดาโปรแกรมที่แสดงด้านบนที่อนุญาตให้คุณสร้างกราฟิก 3 มิติ คุณต้องเน้นโปรแกรม OGRE 3D ฟรี - เอ็นจิ้นกราฟิกสำหรับการเรนเดอร์โดยเฉพาะ ซึ่งคุณไม่เพียงแต่สร้าง "รูปภาพ" เท่านั้น แต่ยังใช้ทั้งหมดและส่วนใหญ่ ที่สำคัญคือเกมคอมพิวเตอร์ที่เต็มเปี่ยม ตัวอย่างเช่น Torchlight ใช้ OGRE เป็นเอ็นจิ้นเกม

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

ประเภทการแสดงผล: ออนไลน์และการแสดงผลล่วงหน้า

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

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

มีการพัฒนาระบบการเรนเดอร์ใหม่ๆ มากขึ้นเรื่อยๆ - ทั้งแบบเฉพาะทางขั้นสูงหรือแบบสากล ปัจจุบัน โปรแกรมการเรนเดอร์ทั่วไปใช้วิธีการคำนวณหลักสามวิธี: Rasterization (Scanline) - วิธีการสร้างภาพโดยไม่ได้แสดงจุดพิกเซลแต่ละจุด แต่เป็นใบหน้ารูปหลายเหลี่ยมทั้งหมดและพื้นที่ขนาดใหญ่ของพื้นผิว พื้นผิวที่กำหนดคุณสมบัติของวัตถุ เช่น แสงในฉาก จะได้รับการแก้ไขเป็นข้อมูลที่ไม่เปลี่ยนรูป ภาพที่ได้มักจะไม่สะท้อนการเปลี่ยนแปลงของเปอร์สเปคทีฟในการส่องสว่าง ความชัดลึก ฯลฯ มักใช้ในระบบสำหรับการแสดงฉากในเกมและในการผลิตวิดีโอ Raytracing - ฟิสิกส์ของฉากคำนวณจากรังสีที่เล็ดลอดออกมาจากเลนส์ของกล้องเสมือนและการวิเคราะห์ปฏิสัมพันธ์ของรังสีแต่ละชนิดกับวัตถุที่พบในฉาก ขึ้นอยู่กับปริมาณและคุณภาพของ "การกระดอน" ดังกล่าว การสะท้อนหรือการหักเหของแสง สี ความอิ่มตัว ฯลฯ จะถูกจำลอง คุณภาพของภาพที่ได้จะสูงกว่ามากเมื่อเทียบกับ rasterization ด้วยการใช้ทรัพยากรที่เพิ่มขึ้น การคำนวณแสงสะท้อน (Radiosity) - แต่ละจุด แต่ละพิกเซลของภาพจะประดับด้วยสีที่ไม่ขึ้นกับตัวกล้อง โดยได้รับอิทธิพลจากแหล่งกำเนิดแสงทั่วโลกและในท้องถิ่น และสิ่งแวดล้อม วิธีนี้ทำให้สามารถคำนวณลักษณะที่ปรากฏของสีและการสะท้อนแสงจากวัตถุที่อยู่ติดกันบนพื้นผิวของแบบจำลองได้ การปฏิบัติแสดงให้เห็นว่าระบบการเรนเดอร์ขั้นสูงและเป็นที่นิยมใช้วิธีการทั้งหมดหรือวิธีการหลักรวมกัน สิ่งนี้ช่วยให้คุณบรรลุความสมจริงของแสงและความเชื่อถือได้สูงสุดในการแสดงกระบวนการทางกายภาพในฉากที่กำหนด