SDL 2.0.22 มาพร้อมกับการปรับปรุง Wayland และคุณสมบัติใหม่

SDL_โลโก้

ดิ การเปิดตัว SDL 2.0.22 . เวอร์ชันใหม่เวอร์ชันที่มีการปรับปรุงความเข้ากันได้ต่างๆ กับ Wayland ตลอดจนการปรับปรุงต่างๆ และอื่นๆ

สำหรับผู้ที่ไม่คุ้นเคยกับไลบรารี SDL คุณควรรู้ว่าสิ่งนี้ มีเครื่องมือเช่นฮาร์ดแวร์เร่งเอาต์พุตกราฟิก 2D และ 3D, การประมวลผลอินพุต, การเล่นเสียง, เอาต์พุต 3 มิติผ่าน OpenGL / OpenGL ES และการดำเนินการอื่น ๆ ที่เกี่ยวข้อง

SDL นั้นคล้ายคลึงกับ DirectX ซึ่งใครจะโต้แย้งได้ว่าแอนะล็อกของ DirectX คือ OpenGL DirectX ยังใช้งานได้กับอุปกรณ์อินพุตและเสียง เมื่อ Loki Software เริ่มพอร์ตเกม AAA บน Linux พวกเขาแทนที่ Direct3D ด้วย OpenGL และไม่มีการแทนที่อย่างอื่นและเนื่องจากทุกวันนี้มันยากที่จะเขียนแอปพลิเคชัน "X" แม้กระทั่งกับ WinAPI บน API X11 แต่ด้วย DirectDraw บน WinAPI ซึ่งเป็นอยู่แล้ว ปัญหาก็คือการถือกำเนิดของ SDL

คุณสมบัติใหม่หลักของ SDL 2.0.22

ในเวอร์ชันใหม่ที่นำเสนอนี้ การปรับปรุงความเข้ากันได้ของโปรโตคอล Waylandดังนั้นในตอนแรก มีการวางแผนที่จะเปลี่ยนไปใช้โปรโตคอล Wayland โดยค่าเริ่มต้นในสภาพแวดล้อมที่ให้การสนับสนุน Wayland และ X11 พร้อมกัน แต่เนื่องจากปัญหา ที่เกี่ยวข้องกับ Wayland ในเกมและไดรเวอร์ NVIDIA ได้ตัดสินใจเลื่อนการเปลี่ยนแปลงออกไป (ในสภาพแวดล้อม Wayland ที่มีองค์ประกอบ XWayland เอาต์พุตยังคงใช้โดยใช้โปรโตคอล X11)

ในการใช้เวย์แลนด์ ต้องตั้งค่าตัวแปรสภาพแวดล้อม "SDL_VIDEODRIVER=wayland" ก่อนเริ่มแอปพลิเคชัน หรือเพิ่มฟังก์ชัน 'SDL_SetHint(SDL_HINT_VIDEODRIVER, "wayland,x11")' ลงในโค้ดก่อนเรียกใช้ SDL_Init() การคอมไพล์ด้วย Wayland ต้องมีอย่างน้อย libwayland-client 1.18.0

การเปลี่ยนแปลงที่โดดเด่นอีกประการหนึ่งก็คือ เพิ่มชุดฟังก์ชันเพื่อจัดการพื้นที่สี่เหลี่ยม (กำหนดการเกิดของจุด ลบ เปรียบเทียบ รวม ฯลฯ) การทำงานด้วยพิกัดและขนาดตามตัวเลขทศนิยม

สำหรับ Linux เพิ่ม SDL_HINT_X11_WINDOW_TYPE flag เพื่อตั้งค่าพารามิเตอร์ _NET_WM_WINDOW_TYPE บน Windows และยังเพิ่มแฟล็ก SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR สำหรับ Linux เพื่อใช้ libdecor กับเซิร์ฟเวอร์คอมโพสิตที่รองรับ xdg-decoration

สำหรับ Android ฟังก์ชัน SDL_AndroidSendMessage() จะถูกนำไปใช้เพื่อส่งคำสั่งตามอำเภอใจไปยังตัวควบคุม Java SDL

จากการเปลี่ยนแปลงอื่น ๆ ที่โดดเด่น:

  • เพิ่มการตั้งค่าสถานะ SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE เพื่อเปิดใช้งานการส่งเหตุการณ์ SDL_QUIT เมื่อปิดหน้าต่างแอปพลิเคชันล่าสุด
  • เพิ่มคุณสมบัติ SDL_HINT_JOYSTICK_ROG_CHAKRAM เพื่อจัดการกับเมาส์ ROG Chakram เหมือนจอยสติ๊ก
    เพิ่มฟังก์ชัน SDL_RenderGetWindow() เพื่อรับหน้าต่างที่เกี่ยวข้องกับ SDL Renderer
  • เพิ่มฟังก์ชัน SDL_IsTextInputShown() เพื่อตรวจสอบว่าพื้นที่ป้อนข้อความแสดงขึ้นหรือไม่
  • เพิ่มฟังก์ชัน SDL_ClearComposition() เพื่อล้างพื้นที่ป้อนข้อความโดยไม่ต้องปิดใช้งานวิธีการป้อนข้อมูล (IME)
  • เพิ่มเหตุการณ์ SDL_TEXTEDITING_EXT เพื่อจัดการพื้นที่ป้อนข้อความแบบยาว และตั้งค่าสถานะ SDL_HINT_IME_SUPPORT_EXTENDED_TEXT เพื่อเปิดใช้งานกิจกรรมนี้
  • เพิ่มการตั้งค่าสถานะ SDL_HINT_MOUSE_RELATIVE_MODE_CENTER เพื่อเปิดใช้งานการจำกัดเมาส์ไว้ที่กึ่งกลางของหน้าต่างเท่านั้น แทนที่จะเป็นทั้งหน้าต่างเมื่อเปิดใช้งานโหมดสัมพันธ์
  • เปิดใช้งานการจับภาพเมาส์อัตโนมัติเมื่อคลิกปุ่มเมาส์ แอตทริบิวต์ SDL_HINT_MOUSE_AUTO_CAPTURE ถูกเสนอให้ปิดใช้งาน

ในที่สุด หากคุณสนใจที่จะทราบข้อมูลเพิ่มเติม ของเวอร์ชันใหม่นี้คุณสามารถตรวจสอบไฟล์ รายละเอียดตามลิงค์ต่อไปนี้

จะติดตั้ง 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

แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. รับผิดชอบข้อมูล: AB Internet Networks 2008 SL
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา