Call of Duty: Warzone Mobile เป็นเกมแอ็กชันมุมมองบุคคลที่หนึ่งในแฟรนไชส์ Call of Duty ที่ได้รับความนิยม การทำให้เกมคอนโซลและ PC ที่ได้รับความนิยมอย่างแพร่หลายนี้พร้อมใช้งานบนอุปกรณ์เคลื่อนที่ใช้ประโยชน์จาก API ระดับล่างบนอุปกรณ์เคลื่อนที่เพื่อมอบประสบการณ์ที่ยอดเยี่ยมให้แก่ผู้เล่น
จากมุมมองทางเทคนิค เป้าหมายของการใช้งานบนอุปกรณ์เคลื่อนที่คือการรองรับอุปกรณ์เคลื่อนที่ Android ที่หลากหลาย ขณะเดียวกันก็ทำให้การใช้งานใกล้เคียงกับเวอร์ชันคอนโซลมากที่สุด และตรวจสอบว่าไปป์ไลน์กราฟิกและเครื่องมือต่างๆ ยังคงเข้ากันได้กับเกมและเนื้อหาบนคอนโซลและ PC ปัจจุบัน
เครื่องมือของ Call of Duty ใช้การซิงค์ การจัดสรรหน่วยความจำ และการกำหนดเวลาในการจัดการการแสดงผลโดยใช้ระบบที่เรียกว่า Task Graph Renderer ซึ่งจะกำหนดงานที่จะดำเนินการบน GPU และระบุทรัพยากรที่จำเป็น กล่าวอย่างเจาะจงคือ ระบบเป็นกราฟการแสดงผลที่มีงาน ทรัพยากร และข้อกําหนดซึ่งระบุไว้ในสคริปต์ระดับสูงที่ประมวลผลเมื่อโหลดเพื่อสร้างลําดับงานที่เหมาะสําหรับการดําเนินการบน GPU และระบุทรัพยากรที่ใช้ ณ เวลาส่งเฟรม
เราได้เลือก Vulkan ซึ่งเป็น API กราฟิก 3 มิติแบบข้ามแพลตฟอร์มที่ทันสมัย เป็นอินเทอร์เฟซการแสดงผลแบ็กเอนด์สำหรับโปรแกรมแสดงผลกราฟงานใน Android

ประโยชน์ของ Vulkan API
เกมใช้ API การแสดงผลที่คล้ายกับการใช้งานบนคอนโซลและ PC ที่มีอยู่เพื่อคงสไตล์ภาพที่โดดเด่นของ Call of Duty และรองรับความคืบหน้าที่แชร์ระหว่าง Call of Duty: Warzone Mobile กับเกมเวอร์ชันคอนโซลและ PC ได้ดียิ่งขึ้น ใน Android นั้น Vulkan ช่วยให้ Activision พัฒนาต่อจากเครื่องมือ ไปป์ไลน์ และเชิเดอร์ที่มีอยู่ รวมถึงรองรับเนื้อหาที่ศิลปินสร้างขึ้นได้โดยไม่ต้องยกเครื่องสแต็กซอฟต์แวร์ทั้งหมด
การพยายามทำสิ่งนี้ด้วยโปรแกรมแสดงผลที่แตกต่างออกไปโดยสิ้นเชิงจะมีค่าใช้จ่ายสูงมาก และการพยายามรองรับ API ของกราฟิกรุ่นเก่าสำหรับไปป์ไลน์ Call of Duty จะส่งผลต่อชุดฟีเจอร์มากเกินไป Activision พิจารณาแล้วว่า Vulkan เป็นตัวเลือกที่เหมาะสมที่สุดในการนําฟีเจอร์ทั้งหมดมาสู่ Android ในขณะเดียวกันก็ลดผลกระทบต่อค่าใช้จ่ายโดยรวมในการพัฒนา Vulkan ได้รับการสนับสนุนอย่างมากจากผู้ผลิตอุปกรณ์ Android ซึ่งทำให้ API นี้เป็นตัวเลือกที่ดีสำหรับการพัฒนาในอนาคตด้วย
อุปกรณ์ที่ไม่มีฮาร์ดแวร์หรือไดรเวอร์ที่รองรับ Vulkan มักจะเป็นอุปกรณ์รุ่นเก่าและมีประสิทธิภาพไม่เพียงพอที่จะเล่นเกม ดังนั้น นอกจาก Vulkan จะเหมาะกับทางเทคนิคสำหรับเครื่องมือและไปป์ไลน์เนื้อหาแล้ว การรองรับ Vulkan ยังเป็นข้อกำหนดด้านฮาร์ดแวร์และทำหน้าที่เป็นตัวกรองประสิทธิภาพด้วย
ความสามารถในการใช้งานร่วมกับ API ของแพลตฟอร์มที่มีอยู่
Vulkan มีแนวคิดคล้ายกับ API ที่มีอยู่ซึ่งใช้สำหรับ Call of Duty: Warzone โดยมีการจัดการทรัพยากรอย่างชัดเจน การเปลี่ยนชื่อหน่วยความจำ ไปป์ไลน์การประมวลผลที่คล้ายกัน และการเข้าถึงทรัพยากรแบบไม่ผูก ความคล้ายคลึงนี้ช่วยให้ Activision คงโครงสร้างของโปรแกรมแสดงผลให้สอดคล้องกับโปรแกรมแสดงผลของคอนโซลและ PC ได้ เพียงแค่ต้องเปลี่ยนแปลงแบ็กเอนด์เพื่อใช้อินเทอร์เฟซกับ Vulkan
การรองรับโปรแกรมเปลี่ยนรูปแบบที่ใช้ HLSL ที่มีอยู่ซึ่งมีชุดฟีเจอร์ครบถ้วนโดยใช้การคอมไพล์ DXC เป็น SPIR-V ช่วยให้ Android ผสานรวมเข้ากับไปป์ไลน์การสร้างที่มีอยู่ของ Activision ได้ กระบวนการนี้มีความท้าทาย แต่ก็ยังมีประโยชน์มากกว่าการเขียนใหม่และค่าใช้จ่ายเพิ่มเติมในการดูแลรักษาหลายเวอร์ชันหรือหลายภาษา


ฟีเจอร์ Vulkan ที่ใช้ใน Call of Duty: Warzone Mobile
- การแอลกอริทึมแทนที่ทรัพยากรและการควบคุมแถบแยกอย่างชัดแจ้งช่วยให้กราฟงานแสดงผลลดความต้องการหน่วยความจําสําหรับเป้าหมายการแสดงผลได้อย่างมากเมื่อเทียบกับการจัดสรรแบบคงที่
- ความยืดหยุ่นช่วยให้ใช้แนวทางที่เหมาะกับอุปกรณ์เคลื่อนที่ในการเรนเดอร์งานได้อย่างราบรื่น
- การผ่านข้อมูลไปยังโปรแกรมแสดงผลเป็นฟีเจอร์หลักที่ช่วยให้โปรแกรมแสดงผลตัดสินใจได้อย่างเหมาะสมสำหรับสถาปัตยกรรม GPU ของอุปกรณ์เคลื่อนที่ทั่วไป การตัดสินใจเหล่านี้ส่วนใหญ่ยังให้ผลลัพธ์ที่ดีบนแพลตฟอร์มอื่นๆ ด้วย
- กราฟงานรองรับความละเอียดของฉากแบบไดนามิกโดยค่าเริ่มต้น ซึ่งช่วยให้ควบคุมประสิทธิภาพและการใช้พลังงานได้ในระดับหนึ่ง
- ไปป์ไลน์ GPU แบบสมบูรณ์ที่มีการคัดออกตามการประมวลผลอย่างครอบคลุมช่วยให้ฉากมีความซับซ้อนมากขึ้นอย่างมาก
- ปรับสมดุลความละเอียดในการคัดออกเพื่อพิจารณาการกําหนดเป้าหมายโปรแกรมแสดงผลที่เลื่อนเวลาไว้ตามไทล์
- จุดคอขวดคือภาระงานการประมวลผลที่ซับซ้อน ไม่ใช่จำนวนสามเหลี่ยม
- ไปป์ไลน์ GPU ได้รับการออกแบบโดยคำนึงถึงสถานการณ์ต่างๆ
- ตัวเลือกในการเปลี่ยนรายละเอียดการคัดออก
- ชุดตัวบ่งชี้ขนาดใหญ่มากช่วยให้เรนเดอร์แบบไม่มีการเชื่อมโยงได้อย่างเต็มที่ในฮาร์ดแวร์ที่เข้ากันได้ ซึ่งจะช่วยลดต้นทุนการสร้างการเรียกใช้ CPU ได้มาก พร้อมทั้งให้ประโยชน์ด้านประสิทธิภาพ พลังงาน และความเย็น
- เครื่องมือกําหนดค่า HW ช่วยในการปรับการตั้งค่าความเที่ยงตรงตามรุ่นอุปกรณ์ที่เฉพาะเจาะจงเพื่อให้ผู้ใช้ได้รับประสบการณ์การใช้งานที่ดีที่สุด
- ผู้ใช้กำหนดค่าโหมด: ประสิทธิภาพที่ดีที่สุด คุณภาพที่ดีที่สุด หรือประหยัดแบตเตอรี่
- การออกแบบชุดเชดเดอร์สำหรับอุปกรณ์แต่ละเครื่องจะมีชุดเชดเดอร์ที่แตกต่างกันสำหรับค่ากําหนดล่วงหน้าของ GPU แต่ละรายการ (การตั้งค่าคุณภาพและความถูกต้อง) ตัวกำหนดค่า HW ช่วยเกมเลือกชุด Shader ที่ดีที่สุดสำหรับอุปกรณ์
- ช่วยลดความซับซ้อนของการใช้เชดเดอร์ที่กำหนดค่าได้สูงร่วมกับข้อกำหนดในการสร้างออบเจ็กต์ไปป์ไลน์
- มีชุดเงาแบบไม่ใช้การเชื่อมโยงสำรองเพื่อกำหนดเป้าหมายไปยังโทรศัพท์และไดรเวอร์รุ่นเก่าซึ่งไม่รองรับทรัพยากรเงามากนัก
- การใช้ค่าคงที่เฉพาะอย่างชาญฉลาดเพื่อจัดการกับความแตกต่างของปัจจัย
- ข้อบกพร่องส่วนใหญ่ของคอมไพเลอร์ Shader ในไดรเวอร์สามารถแก้ไขได้โดยใช้ค่าคงที่เฉพาะ
- ปรับสมดุลกับจำนวนชุด Shader สำหรับอุปกรณ์แต่ละรุ่น

โปรไฟล์และการแก้ไขข้อบกพร่อง
ในช่วงแรกของการพัฒนา Activision พบช่องโหว่หลายประการในด้านความเสถียรและฟังก์ชันการทำงานเมื่อใช้เครื่องมือโปรไฟล์และแก้ไขข้อบกพร่องของ Vulkan ตั้งแต่นั้นมา มีการปรับปรุงอย่างต่อเนื่องในเครื่องมือโปรไฟล์เฉพาะผู้ให้บริการและเครื่องมือที่ไม่เจาะจงผู้ให้บริการ เช่น RenderDoc ตอนนี้นักพัฒนาแอปสามารถมุ่งเน้นที่ปัญหาการแสดงผลและโอกาสในการเพิ่มประสิทธิภาพได้อย่างมั่นใจมากขึ้น
คุณภาพสูงด้วย Vulkan
Call of Duty: Warzone Mobile ทำงานบนอุปกรณ์ Android ที่พร้อมใช้งาน Vulkan หลากหลายรุ่นโดยใช้เทคโนโลยีการแสดงผลแบบเดียวกับในคอนโซลและ PC Vulkan ช่วยลดค่าใช้จ่ายและปัญหาในการพัฒนา และช่วยให้ผู้เล่น Android ได้สัมผัสกับเนื้อหาและเกมเพลย์ของ Call of Duty ขนานแท้ที่มีรายละเอียดเสมือนจริงสูง