DirectX Raytracing (DXR) Tier 1.1 คุณสมบัติใหม่สามารถทำงานร่วมกับการสนับสนุนไดร์เวอร์เพียงอย่างเดียวโดยไม่ต้องปรับเปลี่ยนฮาร์ดแวร์หนัก ๆ

ฮาร์ดแวร์ / DirectX Raytracing (DXR) Tier 1.1 คุณสมบัติใหม่สามารถทำงานร่วมกับการสนับสนุนไดร์เวอร์เพียงอย่างเดียวโดยไม่ต้องปรับเปลี่ยนฮาร์ดแวร์หนัก ๆ อ่าน 3 นาที

Xbox



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

ในขณะเดียวกัน Microsoft ก็มั่นใจว่าระบบนิเวศของ Windows OS นั้นเหมาะสมอย่างยิ่งในฐานะแพลตฟอร์มที่เหมาะสำหรับการเล่นเกมระดับไฮเอนด์ แพลตฟอร์ม DirectX ของ บริษัท ซึ่งเป็นมาตรฐานชั้นนำสำหรับการเล่นเกมบนเดสก์ท็อปมายาวนานกำลังได้รับการปรับแต่งเพื่อรองรับการใช้งานและยังช่วยเพิ่ม 'Real-time Ray Tracing' ในความเป็นจริง DirectX Raytracing (DXR) Tier 1.1 เป็นมาตรฐานล่าสุดที่รองรับชุดคุณสมบัติใหม่ คุณสมบัติที่น่าตื่นเต้นบางอย่างที่การติดตามเรย์แบบเรียลไทม์สามารถรองรับได้ในคุณสมบัติใกล้ ได้แก่ การติดตามรังสีอินไลน์ DispatchRays () เรียกผ่าน ExecuteIndirect () , เพิ่มสถานะวัตถุผ่าน AddToStateObject () , GeometryIndex () ในเฉดสี raytracing , และอื่น ๆ. มาดูคุณสมบัติใหม่บางส่วนที่ DirectX 12 สำหรับ Windows 10 จะรองรับการติดตามรังสี



การติดตามเรย์แบบอินไลน์:

อีกรูปแบบหนึ่งของการติดตามรังสีแบบอินไลน์ไม่ได้ใช้เฉดสีแบบไดนามิกหรือตารางเชดเดอร์แยกต่างหาก API สำหรับคุณลักษณะนี้ซ่อนการเข้าถึงโครงสร้างการเร่งความเร็ว (เช่นโครงสร้างข้อมูลการส่งผ่านกล่องจุดตัดสามเหลี่ยม) สิ่งนี้จะปล่อยให้ฮาร์ดแวร์ / ไดรเวอร์เป็นหลัก ที่น่าสนใจคือรหัสแอปที่จำเป็นทั้งหมดสำหรับจัดการทั้ง Hit ของผู้สมัครที่แจกแจงและผลลัพธ์ของการสืบค้น (เช่น hit vs miss) สามารถมีอยู่ใน shader ที่ขับเคลื่อน RayQuery .



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



DispatchRays () โทรผ่าน ExecuteIndirect ():

คุณลักษณะนี้ช่วยให้เฉดสีบน GPU สร้างรายการ DispatchRays () โทร. ซึ่งรวมถึงพารามิเตอร์แต่ละตัวเช่นการนับเธรดการตั้งค่าตาราง shader และการตั้งค่าพารามิเตอร์รูทอื่น ๆ คุณลักษณะที่ดีที่สุดคือสามารถเรียกใช้รายการทั้งหมดได้โดยที่กระบวนการไม่จำเป็นต้องมีการเดินทางกลับกลางไปที่ CPU



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

เพิ่มสถานะวัตถุผ่าน AddToStateObject ():

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

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

GeometryIndex () ใน Ray Tracing Shaders:

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

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

นอกจากคุณสมบัติดังกล่าวแล้ว DirectX Raytracing (DXR) Tier 1.1 ยังรวมถึง RAY_FLAG_SKIP_TRIANGLES และ RAY_FLAG_SKIP_PROCEDURAL_PRIMITIVES ธง แม้ว่าแฟล็กเหล่านี้จะพร้อมใช้งานสำหรับการโทร raytracing แต่ละครั้ง แต่ยังสามารถประกาศทั่วโลกผ่านการกำหนดค่าไปป์ไลน์ raytracing

เป็นที่ชัดเจนว่า Microsoft กำลังพยายามเพิ่มประสิทธิภาพ DirectX 12 สำหรับเกมที่ใช้กราฟิกมาก ยิ่งไปกว่านั้นด้วย ray tracing ที่สัญญาว่าจะเป็นหนึ่งในคุณสมบัติที่สำคัญที่สุดสำหรับเกมระดับไฮเอนด์และนักเล่นเกม บริษัท จึงมั่นใจได้ว่าระบบซีพียูและ GPU ถูกใช้อย่างเหมาะสมที่สุด โดยมีความซ้ำซ้อนน้อยที่สุด

แท็ก directx nvidia raytracing RTX