สตูดิโอแอนิเมชั่น Dreamworks ได้เปิดซอร์สระบบการเรนเดอร์ MoonRay ซึ่งใช้การติดตามรังสีโดยยึดตามการรวมตัวเลขของ Monte Carlo (MCRT) ผลิตภัณฑ์นี้ใช้ในการเรนเดอร์ภาพยนตร์การ์ตูนเรื่อง “How to Train Your Dragon 3”, “The Croods 2: Housewarming Party”, “Bad Boys”, “Trolls” World Tour", "The Boss Baby 2", "Everest" และ "Puss in Boots 2: The Last Wish" รหัสนี้เผยแพร่ภายใต้ลิขสิทธิ์ Apache 2.0 และจะได้รับการพัฒนาเพิ่มเติมในฐานะผลิตภัณฑ์โอเพ่นซอร์สภายในโครงการ OpenMoonRay
ระบบได้รับการพัฒนาตั้งแต่เริ่มต้น เป็นอิสระจากการพึ่งพาโค้ดที่ล้าสมัย และพร้อมสำหรับการสร้างสรรค์ผลงานระดับมืออาชีพ เช่น ภาพยนตร์สารคดี การออกแบบเบื้องต้นมุ่งเน้นไปที่ประสิทธิภาพและความสามารถในการปรับขนาดสูง รวมถึงการสนับสนุนการเรนเดอร์แบบมัลติเธรด การขนาน คำสั่งแบบเวกเตอร์ (SIMD) การจำลองแสงที่สมจริง การประมวลผล GPU หรือรังสีฝั่ง CPU การจำลองแสงตามการติดตามเส้นทางที่สมจริง การเรนเดอร์ โครงสร้างเชิงปริมาตร (หมอก ไฟ เมฆ)
เพื่อจัดการการเรนเดอร์แบบกระจาย เราใช้เฟรมเวิร์ก Arras ของเราเอง ซึ่งช่วยให้เราสามารถกระจายการคำนวณไปยังหลายๆ ส่วนได้ เซิร์ฟเวอร์ หรือสภาพแวดล้อมบนคลาวด์ โค้ด Arras จะเป็นโอเพนซอร์สควบคู่ไปกับโค้ดเบสหลักของ MoonRay ไลบรารีการติดตามรังสี Intel Embree สามารถใช้เพื่อเพิ่มประสิทธิภาพการคำนวณแสงในสภาพแวดล้อมแบบกระจาย และคอมไพเลอร์ Intel ISPC สามารถใช้สำหรับการแปลงเชเดอร์เป็นเวกเตอร์ การเรนเดอร์สามารถหยุดชั่วคราวได้ทุกจุดและดำเนินการต่อจากจุดที่หยุดไป
แพ็คเกจนี้ยังประกอบด้วยไลบรารีขนาดใหญ่ของวัสดุที่ใช้ Rendering ตามทางกายภาพ (PBR) ที่ทดสอบในโครงการการผลิต และเลเยอร์ตัวแทน USD Hydra Render สำหรับการรวมเข้ากับระบบสร้างเนื้อหาที่เปิดใช้งาน USD ที่คุ้นเคย เป็นไปได้ที่จะใช้โหมดการสร้างภาพต่างๆ ตั้งแต่ภาพเหมือนจริงไปจนถึงแบบมีสไตล์ ด้วยการสนับสนุนการเรนเดอร์แบบกระจาย แอนิเมเตอร์สามารถตรวจสอบผลลัพธ์แบบโต้ตอบและเรนเดอร์ฉากหลายเวอร์ชันพร้อมๆ กันที่มีสภาพแสงแตกต่างกัน คุณสมบัติของวัสดุที่แตกต่างกัน และจากมุมมองที่แตกต่างกัน

ที่มา: opennet.ru
