ไลบรารี overlay สำหรับ Windows ใหม่ที่เรียกว่า Asdf Overlay ได้เปิดตัวขึ้น โดยเสนอให้นักพัฒนาวิธีการสร้าง overlay ประสิทธิภาพสูงสำหรับเกมและแอปพลิเคชัน ไลบรารีที่สร้างขึ้นด้วย Rust นี้มีเป้าหมายเพื่อแก้ไขปัญหาประสิทธิภาพทั่วไปที่รบกวนการพัฒนา overlay มาหลายปี
แอปพลิเคชันปัจจุบัน:
- Alspotron : ระบบแสดงเนื้อเพลงซ้อนทับในเกม
- Tosu : ระบบซ้อนทับในเกม
สถาปัตยกรรมที่เร่งด้วย GPU ขจัดคอขวดด้านประสิทธิภาพ
คุณสมบัติเด่นของไลบรารีคือการใช้ GPU shared textures แทนการคัดลอก framebuffer แบบดั้งเดิมที่อาศัย CPU วิธีการนี้ช่วยให้ overlay ขนาดใดก็ตามสามารถเรนเดอร์ได้โดยไม่สูญเสียประสิทธิภาพ ซึ่งเป็นการแก้ไขจุดเจ็บปวดหลักสำหรับนักพัฒนา ระบบทำงานโดยการ hook เข้าไปใน rendering backend ต่างๆ รองรับทุกอย่างตั้งแต่ DirectX 9 รุ่นเก่าไปจนถึง Vulkan และ DirectX 12 API สมัยใหม่
นักพัฒนาคนหนึ่งในชุมชนแสดงความกระตือรือร้นเกี่ยวกับแนวทางนี้ โดยระบุว่าเขาเคยต่อสู้กับการพัฒนา overlay หลายครั้งมาก่อน การรองรับ API อย่างครอบคลุมหมายความว่าไลบรารีสามารถทำงานได้กับทั้งเกมเก่าและเกมล้ำสมัย
API การเรนเดอร์ที่รองรับ:
- OpenGL
- DirectX 9, 10, 11, 12
- Vulkan
ชุมชนเกมแสดงความสนใจอย่างแรง
ชุมชนเกมและการจำลองการแข่งรถได้แสดงความสนใจเป็นพิเศษในเทคโนโลยีนี้ คำถามได้เกิดขึ้นเกี่ยวกับความเข้ากันได้กับระบบป้องกันการโกงยอดนิยมอย่าง Easy Anti-Cheat และ Vanguard ซึ่งมักจะบล็อกแอปพลิเคชัน overlay สมาชิกชุมชนจาก iRacing และโลกการจำลองการแข่งรถเห็นการประยุกต์ใช้ที่มีศักยภาพ โดยเฉพาะสำหรับการฝังแอปพลิเคชันภายนอกที่คล้ายกับ OpenKneeboard
นอกจากนี้ยังมีความอยากรู้เกี่ยวกับการรองรับ VR ในอนาคตผ่าน OpenXR และ OpenVR ซึ่งอาจขยายประโยชน์ของไลบรารีให้เกินกว่าการเล่นเกมบนเดสก์ท็อปแบบดั้งเดิม
การเลือกชื่อจุดประกายการอภิปรายในชุมชน
การตั้งชื่อ asdf ได้สร้างความสับสนบางอย่าง โดยสมาชิกชุมชนเริ่มแรกคิดว่าเกี่ยวข้องกับเครื่องมือที่มีอยู่แล้วอย่าง asdf version manager หรือระบบ build ของ Common Lisp ชื่อดูเหมือนจะอ้างอิงถึงตำแหน่ง home row มือซ้ายของแป้นพิมพ์ QWERTY แม้ว่าจะมีการถกเถียงบางอย่างเกี่ยวกับความเชื่อมโยงกับปุ่ม WASD สำหรับการเคลื่อนไหวแบบดั้งเดิมในเกม
ไลบรารีนี้ถูกใช้งานในแอปพลิเคชันจริงแล้ว รวมถึง overlay เนื้อเพลงในเกมที่เรียกว่า Alspotron และ gaming overlay ที่เรียกว่า Tosu สำหรับนักพัฒนาที่สนใจลองใช้ โปรเจกต์ให้ตัวอย่างทั้งใน Node.js และ Rust พร้อมคุณสมบัติอย่างการควบคุมการจับ input และการรองรับ backend หลายตัว
อ้างอิง: Asdf Overlay