การเพิ่มประสิทธิภาพและการจัดการความร้อนเป็นสิ่งจําเป็นในการพัฒนาเกมที่ประสบความสําเร็จบน Android เดิมทีนักพัฒนาแอปต้องจัดการปัญหาเหล่านี้ด้วยการลดคุณภาพของเกมหรือเพิ่มประสิทธิภาพโปรแกรมแสดงผล การเปลี่ยนแปลงเหล่านี้มักจะเจาะจงเกมและมักมีความยืดหยุ่นน้อย
ผู้เข้าร่วมหลายรายในระบบนิเวศ Android เสนอ API ประสิทธิภาพแบบปรับเปลี่ยนได้ให้แก่นักพัฒนาแอป Google และ MediaTek ร่วมมือกันผสานรวมข้อเสนอของเรา ได้แก่ Android Dynamic Performance Framework (ADPF) และ MediaTek Adaptive Gaming Technology (MAGT) เพื่อลดความซับซ้อนในการผสานรวมฟีเจอร์ประสิทธิภาพแบบปรับเปลี่ยนได้และลดการแยกส่วนในระบบนิเวศ
ADPF ช่วยให้นักพัฒนาแอปปรับปริมาณงานของเกมตามสถานการณ์ความร้อนแบบเรียลไทม์ได้ รวมถึงให้คำแนะนำแก่ระบบปฏิบัติการเพื่อเพิ่มประสิทธิภาพสำหรับปริมาณงานปัจจุบัน คุณสามารถใช้สัญญาณเหล่านี้เพื่อปรับการตั้งค่าความถูกต้องและประสิทธิภาพ เช่น ความละเอียด อัตราเฟรม และแม้แต่กลยุทธ์การโหลดทรัพยากร ซึ่งจะช่วยให้คุณปรับสมดุลระหว่างประสิทธิภาพ ความร้อน และคุณภาพได้ดีขึ้น เพื่อให้เกมเมอร์ Android ได้รับประสบการณ์การใช้งานที่ดีที่สุด ระบบนิเวศของ Android ใช้ประโยชน์จากเทคโนโลยีนี้มาอย่างยาวนาน Ares ของ Kakao Games สามารถเพิ่มความเสถียรของ FPS เป็น 96% ได้โดยการปรับปริมาณงานขณะรันไทม์เพื่อตอบสนองต่อ Thermal API
MediaTek เป็นผู้ให้บริการ SoC ชั้นนำบน Android บริษัทผลิตชิปหลายรุ่น เช่น Dimensity 9300 รุ่นใหม่ นอกจากนี้ MediaTek ยังมี MAGT SDK ที่พร้อมใช้งานตั้งแต่ปี 2021 SDK นี้มีฟีเจอร์ขั้นสูงสำหรับการปรับแต่งประสิทธิภาพใน SoC ของ MediaTek เช่น ข้อมูลแบบละเอียดเกี่ยวกับประสิทธิภาพแบบเรียลไทม์และคำแนะนำในการเพิ่มปริมาณงาน นอกจากการเสนอ MAGT ให้แก่นักพัฒนาแอปแล้ว MediaTek ยังเริ่มเสนอความสามารถของ ADPF ที่ปรับปรุงแล้ว

ป้องกันการควบคุมความร้อนด้วย ADPF และเพิ่มประสิทธิภาพ
MediaTek อนุญาตให้เฟรมเวิร์ก ADPF เข้าถึงอุณหภูมิปัจจุบันและอุณหภูมิเป้าหมายของอุปกรณ์เพื่อป้องกันการจำกัดอย่างรุนแรง การใช้ฟังก์ชัน ADPF
getThermalHeadroom()
ช่วยให้แอปพลิเคชันทราบค่าประมาณของกำลังความร้อนที่พร้อมใช้งาน
ก่อนที่อุปกรณ์จะเข้าสู่การจำกัดการทำงานอย่างรุนแรง เมื่อใช้ค่าประมาณนี้ แอปพลิเคชันจะปรับปริมาณงานแบบไดนามิกเพื่อป้องกันไม่ให้อุปกรณ์ทริกเกอร์การจำกัด ซึ่งจะช่วยปรับปรุงประสบการณ์โดยรวมของผู้ใช้
แอปพลิเคชัน (โดยใช้การสาธิต Boat Attack ของ Unity เป็นตัวอย่าง) ยังใช้ Performance Hint Session API เพื่อเพิ่มประสิทธิภาพด้วย
โดยจะแสดงเวลาเป้าหมายที่ใช้ในการแสดงผลเฟรมและเวลาปัจจุบันที่ใช้ในการแสดงผลเฟรมสำหรับแต่ละเฟรมผ่านฟังก์ชัน updateTargetWorkDuration()
และ reportActualWorkDuration()
ตามลำดับ แพลตฟอร์ม MediaTek จะคํานวณภาระงานระหว่างการเรียกใช้ reportActualWorkDuration()
2 ครั้ง และจัดสรรความจุ CPU เพียงพอเพื่อให้แน่ใจว่าภาระงานจะเสร็จสมบูรณ์ภายในระยะเวลาเป้าหมาย
ด้วยเหตุนี้ แพลตฟอร์ม MediaTek จึงแสดงเฟรมต่อวินาที (FPS) ที่ดีที่สุดอย่างสม่ำเสมอพร้อมกับการสิ้นเปลืองพลังงานที่สมดุล ซึ่งรับประกันประสบการณ์การใช้งานที่ราบรื่น
เปิดใช้อัตราเฟรมที่ดีขึ้น ลดการใช้พลังงาน และเซสชันการเล่นเกมที่ยาวนานขึ้น
โดยรวมแล้ว การแสดงตัวอย่าง Unity Boat Attack ปรับปรุงอัตราเฟรมได้ 8.5 fps, ลดการใช้พลังงานลง 12% และทำให้เซสชันเกมยาวขึ้นได้ 25 นาทีขึ้นไป ค่าเบี่ยงเบนมาตรฐานของ FPS ลดลง 25% การปรับปรุงที่ยอดเยี่ยมนี้จะช่วยให้คุณเพิ่มความสมจริงของเกมและเล่นได้นานขึ้นโดยไม่ทำให้เครื่องร้อน


แม้จะไม่ปรับการตั้งค่าความถูกต้อง แต่เพียงเปิดใช้เซสชันคำแนะนำด้านประสิทธิภาพ ภาระงานก็ลดเวลาเฉลี่ยของเธรดการแสดงผลได้เกือบ 10%
การพัฒนาประสิทธิภาพแบบปรับเปลี่ยนได้ใน SoC ของ MediaTek
ADPF จะได้รับการอัปเกรดในช่วงหลายปีข้างหน้าด้วยฟีเจอร์ใหม่ๆ และเพื่อเพิ่มฟีเจอร์ใหม่ที่ไม่จํากัดอุปกรณ์จาก MAGT สําหรับนักพัฒนาแอปที่ต้องการใช้อุปกรณ์ MediaTek ให้ได้ประโยชน์มากขึ้น MAGT SDK มีความสามารถขั้นสูงที่มุ่งเน้นสถาปัตยกรรมชิปเซ็ต MediaTek โดยเฉพาะ และจะเสนอฟีเจอร์หลักของ ADPF ในเร็วๆ นี้


เริ่มต้นใช้งานการปรับให้เหมาะกับ Android
ตอนนี้ Android Dynamic Performance Framework พร้อมให้บริการแก่นักพัฒนาเกม Android ทุกคนสำหรับเครื่องมือเกม Unity, Unreal, Cocos Creator และผ่านไลบรารี C++ ดั้งเดิมของเรา
- สําหรับนักพัฒนาแอป Unity คุณสามารถเริ่มต้นใช้งานผู้ให้บริการ Adaptive Performance v5.0.0 ได้ โปรดทราบว่าอุปกรณ์ Android ส่วนใหญ่รองรับ Thermal API ตั้งแต่ Android 11 (API ระดับ 30) และ Performance Hint API ตั้งแต่ Android 12 (API ระดับ 31)
- สําหรับนักพัฒนาแอป Unreal คุณสามารถเริ่มต้นใช้งานปลั๊กอิน Unreal Engine สำหรับประสิทธิภาพแบบไดนามิกของ Android กับอุปกรณ์ Android ส่วนใหญ่ที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป
- สำหรับ Cocos Creator คุณสามารถเริ่มต้นใช้งาน Thermal API ได้จากเวอร์ชัน 3.8.2 และ Performance Hint API ได้จากเวอร์ชัน 3.8.3
สำหรับเครื่องมือสร้างเกมเหล่านี้ API ความร้อนจะผสานรวมกับประสิทธิภาพแบบปรับเปลี่ยนได้เพื่อช่วยให้คุณดึงข้อมูลความร้อนของอุปกรณ์ได้ และระบบจะเรียกใช้ API คำแนะนำด้านประสิทธิภาพโดยอัตโนมัติทุกๆ Update()
หรือ Monitor()
โดยไม่ต้องดำเนินการใดๆ เพิ่มเติม
และสุดท้าย สำหรับเครื่องมือที่กำหนดเอง คุณสามารถดูตัวอย่าง ADPF C++ เดิมของเราได้
แหล่งข้อมูลเพิ่มเติม
ดูว่า Android Dynamic Performance Framework ช่วยคุณทำให้ FPS ของเกมเสถียรและลดการจำกัดความร้อนได้อย่างไร
ดูข้อมูลเกี่ยวกับเทคโนโลยีเกมแบบปรับเปลี่ยนได้ของ MediaTek สำหรับการปรับแต่งประสิทธิภาพขั้นสูงใน SoC ของ MediaTek