DirectX คือชุดของ API หรืออินเทอร์เฟซการเขียนโปรแกรมแอปพลิเคชันที่ใช้โดยซอฟต์แวร์เพื่อแสดงเนื้อหามัลติมีเดียและสื่อสารกับฮาร์ดแวร์กราฟิก API ส่วนประกอบหลักของ DirectX คือ Direct3D จัดการการสื่อสารระหว่างซอฟต์แวร์และฮาร์ดแวร์กราฟิก เนื่องจากฮาร์ดแวร์ทั้งหมดแตกต่างกัน การใช้ไลบรารีมาตรฐานของฟังก์ชันและการเรียกใช้เพื่อสื่อสารกับการ์ดกราฟิกของคุณจึงช่วยให้การพัฒนาเกมเร็วขึ้น สิ่งนี้เรียกว่าฮาร์ดแวร์ที่เป็นนามธรรมและเป็นงานหลักของ API
คิดเกี่ยวกับรถยนต์:หากคุณสามารถขับรถยนต์คันหนึ่งได้ คุณก็ขับมันได้ทั้งหมด คันเร่งและเบรกอยู่ในตำแหน่งเดียวกัน และพวงมาลัยหมุนไปในทิศทางเดียวกัน และประตูเปิดออกด้านนอก อาจมีความแตกต่างเล็กน้อยในคุณสมบัติที่ไม่สำคัญ เช่น วิทยุ แต่โดยรวมแล้ว คุณทราบดีว่าจะเกิดอะไรขึ้น DirectX และ Direct3D เป็นแบบนั้น ทำให้นักพัฒนาสามารถเชื่อมต่อกับฮาร์ดแวร์ที่หลากหลายโดยใช้เครื่องมือเดียวกัน และเนื่องจากนักพัฒนาเกมส่วนใหญ่ใช้ไลบรารีมาตรฐานของ Direct3D การเปลี่ยนแปลงใดๆ ใน API จึงสามารถส่งผลกระทบต่อเกมเมอร์และผู้เขียนโค้ดได้เหมือนกัน
มีอะไรใหม่ใน DirectX 12
การอัปเดตที่สำคัญของ DirectX และ Direct3D ทุกครั้งจะนำเสนอคุณลักษณะและการพัฒนาใหม่ๆ อย่างไรก็ตาม Direct3D 12 ทำให้เกิดการเปลี่ยนแปลงที่สำคัญบางอย่างโดยเฉพาะ อันที่จริง มันสามารถนำไปสู่พื้นที่ใหม่ของ API กราฟิกระดับต่ำที่จะเปลี่ยนวิธีการพัฒนาเกม
นามธรรมฮาร์ดแวร์ระดับล่าง
ตอนนี้ DirectX 12 ช่วยให้นักพัฒนาได้ใกล้ชิดกับ "โลหะ" ของฮาร์ดแวร์กราฟิกของผู้ใช้มากขึ้น ทำให้สามารถเข้าถึงคุณลักษณะที่นักพัฒนาไม่เคยใช้งานมาก่อนได้ การเปิดเผยฮาร์ดแวร์ระดับล่างหมายความว่านักพัฒนาที่มีทักษะสามารถเขียนโค้ดที่มีประสิทธิภาพมากขึ้นซึ่งทำงานได้เร็วขึ้น โดยเฉพาะอย่างยิ่ง นักพัฒนาสามารถปรับปรุงการเพิ่มประสิทธิภาพด้วยประสิทธิภาพการทำงานแบบมัลติเธรดที่เร็วขึ้นและการใช้ CPU อย่างมีประสิทธิภาพมากขึ้น ซึ่งอาจช่วยให้มีการเพิ่มประสิทธิภาพระดับต่ำคล้ายกับที่เราเห็นในเกมคอนโซลที่เกมได้รับการปรับแต่งสำหรับฮาร์ดแวร์ระดับกลางที่เจาะจงอย่างยิ่ง โดยแสวงหาประสิทธิภาพที่เป็นไปไม่ได้หากไม่มีการเพิ่มประสิทธิภาพแบบเฉพาะเจาะจงมากเกินไป
ก่อนหน้านี้ DirectX 11 นำเสนอฮาร์ดแวร์ที่เป็นนามธรรมในระดับที่ค่อนข้างสูงเท่านั้น ซึ่งทำให้กระบวนการเขียนโค้ดง่ายขึ้นอย่างมาก อันที่จริง นั่นเป็นแนวคิดเบื้องหลังสิ่งที่ทำให้ API ของฮาร์ดแวร์มีประสิทธิภาพมาก แต่ยังหมายความว่าโอกาสในการปรับแต่งโค้ดแบบละเอียดกับคุณลักษณะเฉพาะของฮาร์ดแวร์มีน้อยครั้งลง บล็อกนักพัฒนาของ Microsoft ให้ข้อมูลเชิงลึกที่ดีว่า DirectX 12 บรรลุผลได้อย่างไร
ปรับปรุงประสิทธิภาพมัลติคอร์
ในช่วงไม่กี่ปีที่ผ่านมานักเล่นเกมยอมรับว่าซีพียูแบบมัลติคอร์ไม่มีประโยชน์สำหรับการเล่นเกม เกมแทนที่จะใช้ประสิทธิภาพแบบเธรดเดียวที่รวดเร็ว ส่วนหนึ่งเกิดขึ้นเนื่องจาก DirectX 11 ไม่อนุญาตให้มีการขนานกันมากนัก เธรด CPU หลายรายการสามารถส่งคำสั่งการวาดได้พร้อมกัน อย่างไรก็ตาม พวกเขาทั้งหมดจะยังคงได้รับการประมวลผลในคิว ทีละรายการ DirectX 12 ขจัดข้อจำกัดดังกล่าว ทำให้ซีพียูแบบมัลติคอร์สามารถส่งคำสั่งไปยัง GPU พร้อมกันได้ ซึ่งจะช่วยเปิดประตูให้โปรเซสเซอร์มัลติคอร์มีประสิทธิภาพมากขึ้น
ลดค่าโทร
ภายใต้ DirectX 11 พลังของ CPU ส่วนใหญ่ถูกใช้ไปในการตีความคำสั่ง API มากกว่าการรันโค้ดเกม DirectX 12 ช่วยลดโอเวอร์เฮดของ API และเพิ่มทรัพยากรในการคำนวณสำหรับการรันโค้ดเกม ซึ่งหมายความว่าเกมที่จำกัด CPU สามารถเห็นประสิทธิภาพที่ดีขึ้น เนื่องจากพลัง CPU ของพวกเขามีอิสระในการจัดการโค้ดเกม เกมส่วนใหญ่ไม่ได้จำกัด CPU ในวันนี้ แต่เป็นไปได้ที่เกมที่ใหม่กว่าจะผลักดันซองจดหมายนี้ให้ก้าวไปอีกขั้น
อะแดปเตอร์หลายตัวที่ชัดเจน
DirectX 12 มีพลังในการรวม GPU หลายตัว (หรือที่เรียกว่า "การ์ดแสดงผล") ไว้ในหน่วยลอจิคัลเดียว คุณลักษณะนี้เรียกว่า Explicit Multiadapter ช่วยให้ GPU หลายตัวได้รับคำสั่งจากซอฟต์แวร์เช่น GPU ตัวเดียว ตัวอย่างเช่น ด้วย DirectX 12 GPU ที่รวมอยู่ในเครื่องของคุณตอนนี้สามารถแท็กทีมด้วย GPU แยกของคุณ ซึ่งให้พลังในการประมวลผลของมันเอง การรองรับ API ที่มากขึ้นยังหมายถึงความน่าเชื่อถือและประสิทธิภาพที่มากขึ้นในการตั้งค่า multi-GPU SLI/CrossFire ในการทดสอบของ Microsoft โดยใช้กราฟิกในตัวควบคู่กับกราฟิกแบบแยก ให้ขอบที่เล็กแต่สังเกตได้ชัดเจนในการวัดประสิทธิภาพ
DirectX 12 มีความสำคัญต่อเกมเมอร์มากแค่ไหน
เช่นเดียวกับการปรับปรุงที่เพิ่มขึ้นเรื่อยๆ นักเล่นเกมจะไม่เห็นความแตกต่างระหว่าง DirectX 11 และ DirectX 12 ทั้งกลางวันและกลางคืน ฟีเจอร์ใหม่นี้ไม่ได้นำเสนอตัวเลือกการเรนเดอร์ใหม่ๆ ที่ทำให้ผู้ใช้ต้องตะลึง และคุณจะไม่เห็นการกระโดด 100 FPS ระหว่างสองมาตรฐาน แต่ประสิทธิภาพที่เพิ่มขึ้นเหล่านี้จะนำไปสู่ประสิทธิภาพที่ดีขึ้นในฮาร์ดแวร์ที่มีประสิทธิภาพน้อยกว่า ปรับปรุงประสิทธิภาพของพีซีของคุณโดยไม่ต้องอัปเกรดฮาร์ดแวร์