SDL เป็นชุดของไลบรารีที่พัฒนาขึ้นด้วยภาษาโปรแกรม C ซึ่งมีฟังก์ชันพื้นฐานสำหรับการดำเนินการมัลติมีเดีย (เสียงและวิดีโอ) ตลอดจนการโหลดและการจัดการรูปภาพ
หลังจากเจ็ดเดือนของการพัฒนา ประกาศเปิดตัวเวอร์ชันใหม่ของ SDL 2.28.0 (DirectMedia Layer อย่างง่าย) ซึ่งโดยพื้นฐานแล้วเป็นเวอร์ชันแก้ไขแม้ว่าจะมีการเปลี่ยนแปลงและเพิ่มคุณสมบัติใหม่บางอย่าง
สำหรับผู้ที่ไม่คุ้นเคยกับไลบรารี SDL คุณควรรู้ว่าสิ่งนี้ มีเครื่องมือเช่นฮาร์ดแวร์เร่งเอาต์พุตกราฟิก 2D และ 3D, การประมวลผลอินพุต, การเล่นเสียง, เอาต์พุต 3 มิติผ่าน OpenGL / OpenGL ES และการดำเนินการอื่น ๆ ที่เกี่ยวข้อง
SDL นั้นคล้ายคลึงกับ DirectX ซึ่งอาจโต้แย้งได้ว่าอะนาล็อกของ DirectX คือ OpenGL DirectX ยังทำงานร่วมกับอุปกรณ์อินพุตและเสียง เมื่อ Loki Software เริ่มพอร์ตเกม AAA บน Linux มันแทนที่ Direct3D ด้วย OpenGL และไม่มีอะไรมาแทนที่สิ่งอื่นใดได้ และเนื่องจากทุกวันนี้การเขียนแอปพลิเคชันใน "X" นั้นยากแม้ว่าจะมี WinAPI บน X11 API แต่ด้วย DirectDraw บน WinAPI ซึ่งมีอยู่แล้ว ปัญหาคือ SDL เกิดขึ้นได้อย่างไร
คุณสมบัติใหม่หลักของ SDL 2.28.0
ดังที่กล่าวไว้ในตอนต้น การเปิดตัวครั้งนี้ ถือเป็นเวอร์ชันแก้ไขและเป็นเวอร์ชันสุดท้ายที่เพิ่มการเปลี่ยนแปลงและปรับปรุง เนื่องจากทางสาขาแจ้งว่า SDL 2.x ย้ายไปยังขั้นตอนการบำรุงรักษา ซึ่งเกี่ยวข้องกับการแก้ไขจุดบกพร่องและการแก้ปัญหาเท่านั้น นั่นคือจะไม่มีการเพิ่มฟังก์ชันใหม่ในสาขา SDL 2.x อีกต่อไป และการพัฒนาจะมุ่งเน้นไปที่การเตรียมพร้อมสำหรับการเปิดตัว SDL 3.0
การเปลี่ยนแปลงในสาขา SDL 3 นั้นโดดเด่นที่การประมวลผลของระบบย่อยบางระบบ การเปลี่ยนแปลง API ที่ละเมิดความเข้ากันได้ และการล้างข้อมูลขนาดใหญ่ของคุณสมบัติที่เลิกใช้งานซึ่งสูญเสียความเกี่ยวข้องในความเป็นจริงสมัยใหม่
ตัวอย่างเช่น และn SDL 3 คาดหวังการยกเครื่องโค้ดทั้งหมดเพื่อทำงานกับเสียง การใช้ Wayland และ PipeWire ตามค่าเริ่มต้น การสิ้นสุดการสนับสนุน OpenGL ES 1.0 และ DirectFB การลบโค้ดเพื่อทำงานบนแพลตฟอร์มเดิม เช่น QNX, Pandora, WinRT และ OS/2
เกี่ยวกับการเปลี่ยนแปลงของ SDL 2.28.0 รุ่นใหม่นี้ ในบรรดานวัตกรรมที่พบ เราสามารถค้นหาสิ่งนี้ได้ เช่น การเพิ่มฟังก์ชัน SDL_HasWindowSurface() และ SDL_DestroyWindowSurface() เพื่อสลับระหว่าง SDL_Rederer และ SDL_Surface API
นอกจากนี้ ยังเน้นที่ การเพิ่มเหตุการณ์ SDL_DISPLAYEVENT_MOVED ใหม่ที่สร้างขึ้นเมื่อจอภาพหลักเปลี่ยนหรือตำแหน่ง การเปลี่ยนแปลงการแสดงผลแบบสัมพัทธ์ในการตั้งค่าหลายจอภาพ
นอกจากนี้ เรายังพบแฟล็ก SDL_HINT_ENABLE_SCREEN_KEYBOARD เพื่อควบคุมการแสดงแป้นพิมพ์บนหน้าจอ ตลอดจนการแก้ไขข้อผิดพลาดทั่วไป
สุดท้ายนี้ต้องบอกเลยว่า งาน จากนักพัฒนา นอกจากนี้ยังจะมุ่งเน้นไปที่เลเยอร์ความเข้ากันได้ของ sdl2-compatซึ่งมี API ที่เข้ากันได้กับไบนารี SDL 2.x และซอร์ส แต่ทำงานบน SDL 3 สำหรับ SDL 2 โดยใช้ความสามารถของสาขา SDL 3
ในที่สุด หากคุณสนใจที่จะทราบข้อมูลเพิ่มเติม ของเวอร์ชันใหม่นี้คุณสามารถตรวจสอบไฟล์ รายละเอียดตามลิงค์ต่อไปนี้
จะติดตั้ง Simple DirectMedia Layer บน Linux ได้อย่างไร?
การติดตั้งไลบรารีนี้บน Linux นั้นค่อนข้างง่ายเนื่องจากลีนุกซ์ส่วนใหญ่มีไลบรารีอยู่ในที่เก็บ
ในกรณีของ Debian, Ubuntu และการกระจายที่ได้มาจากสิ่งเหล่านี้คุณจะต้องเรียกใช้เท่านั้น คำสั่งต่อไปนี้ในเทอร์มินัล:
sudo apt-get install libsdl2-2.0 sudo apt-get install libsdl2-dev
ในขณะที่กรณีของผู้ที่เป็นคุณArch Linux suarios เราต้องเรียกใช้สิ่งต่อไปนี้:
sudo pacman -S sdl2
ในกรณีของผู้ที่เป็นผู้ใช้ Fedora, Centos, RHEL หรือการกระจายใด ๆ ตามพวกเขา พวกเขาต้องรันคำสั่งต่อไปนี้:
sudo yum install SDL2 sudo yum install SDL2-devel
สำหรับลีนุกซ์รุ่นอื่น ๆ ทั้งหมดพวกเขาสามารถค้นหาแพ็คเกจ "sdl" หรือ "libsdl" เพื่อติดตั้งหรือดาวน์โหลดและรวบรวมซอร์สโค้ด
พวกเขาทำสิ่งนี้กับ:
git clone https://hg.libsdl.org/SDL SDL cd SDL mkdir build cd build ./configure make sudo make install