OTT อธิบาย: Ray Tracing คืออะไร?

เผยแพร่แล้ว: 2020-05-01

Ray Tracing เป็นรูปแบบคอมพิวเตอร์กราฟิกขั้นสูงที่จำลองการทำงานของแสงในชีวิตจริง สามารถสร้างคอมพิวเตอร์กราฟิกที่ดูสมจริง

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

สารบัญ

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

    Rasterization เทียบกับ Ray Tracing

    กราฟิกคอมพิวเตอร์แบบเรียลไทม์ที่ทันสมัยดูน่าทึ่ง! เป็นเรื่องยากที่จะจินตนาการว่ามันเกี่ยวข้องกับกราฟิก 3 มิติพื้นฐานเมื่อยี่สิบหรือสามสิบปีที่แล้ว ความจริงก็คือคอนโซลอย่าง Playstation 1 และ Playstation 4 ปัจจุบันใช้วิธีการพื้นฐานเดียวกันในการเรนเดอร์กราฟิก 3D แล้ววางลงบนหน้าจอ 2D ของคุณ

    นี้เรียกว่า rasterization “แรสเตอร์” คือรูปภาพที่แสดงเป็นตารางพิกเซล ซึ่งตรงกับที่หน้าจอของคุณแสดง Rasterization คือกระบวนการแปลงฉาก 3 มิติเป็นภาพ 2 มิติบนหน้าจอ

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

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

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

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

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

    สถานที่สัมผัสประสบการณ์ Ray Tracing

    หากคุณต้องการเห็นการทำงานของ Ray Tracing สิ่งที่คุณต้องทำคือดูภาพยนตร์สมัยใหม่ที่ใช้กราฟิกที่สร้างจากคอมพิวเตอร์ หากคุณดูภาพยนตร์ CG เช่น Toy Story 4 ทุกสิ่งที่คุณเห็นล้วนเป็นผลมาจากการติดตามรังสี

    หากคุณต้องการสำรวจโลกที่มีการฉายรังสีแบบโต้ตอบ ขณะนี้มีเกมเดียวในเมือง GPU Nvidia ซีรีส์ RTX พร้อมด้วยวิดีโอเกมและแอพที่รองรับเทคโนโลยีนี้ คุณสามารถเรียกใช้แอปพลิเคชัน Ray-tracing บางตัวกับฮาร์ดแวร์ที่ไม่ใช่ RTX ได้ แต่คุณจะไม่ได้รับประสิทธิภาพที่ดี อย่าลืมอ่านบทความของเราเกี่ยวกับเกมที่ดีที่สุดที่แสดงฮาร์ดแวร์ RTX

    ปัญหาคือฮาร์ดแวร์ RTX ยังมีราคาแพงอยู่ อย่างไรก็ตาม คอนโซลวิดีโอเกมรุ่นต่อไปมีรูปแบบการรองรับ Ray-tracing ซึ่งหมายความว่าโลกของเกมกระแสหลักอาจช่วยเปลี่ยน Ray-tracing ให้กลายเป็นเทคโนโลยีการเล่นเกมหลักต่อไป อย่างไรก็ตาม หาก ray-tracing ทำได้ยากมากในแบบเรียลไทม์ GPU ใหม่เหล่านี้จะจัดการมันอย่างไร

    Real Time Ray Tracing เกิดขึ้นได้อย่างไร?

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

    อย่างไรก็ตาม CPU และ GPU สมัยใหม่ไม่สามารถบีบอัดตัวเลขเหล่านี้ได้เร็วพอที่จะสร้างภาพในแบบเรียลไทม์ ตัวอย่างเช่น ฟาร์มคอมพิวเตอร์ขนาดใหญ่ที่ใช้สร้างภาพยนตร์ เช่น Monsters Inc หรือ Toy Story ใช้เวลาหลายชั่วโมงในการแสดงเฟรมเดียวของผลิตภัณฑ์ขั้นสุดท้าย

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

    แล้ว GPU เช่น Nvidia RTX series จะใช้วิธี ray-tracing ที่อัตราเฟรมที่เล่นได้ได้อย่างไร? คำตอบคือพวกเขาไม่ได้ใช้ Ray Tracing กับทุกสิ่ง อย่างน้อยก็ไม่ใช่ในชื่อที่ทันสมัย

    เคล็ดลับคือการรวมกราฟิกแบบดั้งเดิมเข้ากับการติดตามเรย์แบบเลือก การ์ด RTX มีฮาร์ดแวร์ Ray-tracing เฉพาะที่ทำงานร่วมกับ GPU แบบเดิม ด้วยวิธีนี้ สามารถใช้ Ray Tracing เพื่อชดเชยข้อบกพร่องบางประการของฮาร์ดแวร์กราฟิกแบบดั้งเดิม

    มี วิดีโอเกมที่คุณสามารถเล่นได้ด้วยการ์ด RTX ที่มี Ray-traced อย่างสมบูรณ์ ตัวอย่างที่ดีที่สุดคือ Quake II RTX นี่เป็นวิดีโอเกมอายุหลายสิบปีที่เล่นง่ายพอที่จะทำให้การติดตามรังสีแบบเรียลไทม์เต็มรูปแบบเป็นไปได้ เมื่อพูดถึงการใช้ Ray-tracing กับวิดีโอเกมในปัจจุบัน จะต้องใช้เวลาหลายปีกว่าที่ฮาร์ดแวร์ดังกล่าวจะกลายเป็นกระแสหลัก

    Ray Tracing อนาคตหรือไม่?

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

    นักพัฒนาซอฟต์แวร์สามารถใส่คุณลักษณะการติดตามรังสีในชื่อของตนได้อย่างปลอดภัย เนื่องจากแพลตฟอร์มยอดนิยมทั้งหมดจะสนับสนุนคุณลักษณะนี้ เนื่องจากกราฟิคแบบ ray-traced นั้นเหนือกว่า ดวงดาวต่างๆ จึงพร้อมสำหรับการมาถึงของ ray-tracing บนฮาร์ดแวร์ราคาไม่แพง ซึ่งหมายความว่าความสมจริงของแสงที่แท้จริงอาจอยู่ที่นี่ในที่สุด

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

    เอ็นจิ้นกราฟิกยอดนิยม เช่น Unreal Engine 4 หรือ Frostbite ได้รวมการรองรับ Ray-tracing ที่เร่งด้วยฮาร์ดแวร์ RTX แล้ว ทำให้มีแนวโน้มมากขึ้นที่นักพัฒนาจะรวมไว้เป็นตัวเลือกสำหรับชื่อของพวกเขา

    คุณควรซื้อ Ray Tracing ตอนนี้หรือไม่

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

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