Разработчиците зад проекта Simple DirectMedia Layer или по-известен като "SDL" пусна преди няколко дни съобщението за пускането на новата версия SDL 2.0.12, който идва основно за добавяне на el Поддръжка на различни контролери за видеоигри, както и някои допълнителни функции към тази библиотека, предназначени да опростят писането на игри и мултимедийни приложения.
За тези, които не знаят за библиотеката SDL, трябва да знаете, че това, предоставя инструменти като хардуерно ускорен 2D и 3D графичен изход, обработка на входа, възпроизвеждане на аудио, 3D изход чрез OpenGL / OpenGL ES и много други свързани операции.
SDL официално е съвместим с Windows, Mac OS X, Linux, iOS и Android, въпреки че има поддръжка за други платформи като QNX, в допълнение към други архитектури и системи като Sega Dreamcast, GP32, GP2X и т.н.
Прост слой DirectMedia е написан на C, работи изначално с C ++ и има връзки, достъпни за няколко други езика, включително C # и Python, той се разпространява под лиценза zlib. Този лиценз ви позволява да използвате SDL свободно във всеки софтуер.
Въпреки че е програмиран на C, той има обвивки за други езици за програмиране като C ++, Ada, C #, BASIC, Erlang, Lua, Java, Python и др.
Какво е новото в Simple DirectMedia Layer 2.0.12?
С пускането на тази нова версия на библиотеката, разработчиците споменават като основна новост на съвместимост с контролерите за игри на Nintendo GameCube и индикатора SDL_HINT_JOYSTICK_HIDAPI_GAMECUBE за да се установи фактът на използването им, те се добавят към контролера HIDAPI. HIDAPI също така подобри поддръжката за Xbox 360 и Xbox One;
В допълнение към споменаването на работата, извършена за добавяне на поддръжка за контролери за игри:
- 8BitDo FC30 Pro
- 8BitDo M30 геймпад
- BDA PS4 Fightpad
- Боен командир на HORI
- Хиперкин херцог
- Hyperkin X91
- MOGA XP5-A Plus
- NACON GC-400ES
- NVIDIA контролер v01.04
- PDP срещу бойна подложка
- Razer Raion Fightpad за PS4
- Razer Serval
- Stadia контролер
- SteelSeries Stratus Duo
- Victrix Pro Fight Stick за PS4
- Xbox One Elite Series 2
Освен, че, бяха добавени функции SDL_GetTextureScaleMode () и SDL_SetTextureScaleMode () за да получите и зададете режима на мащаба, използван за текстури, функцията SDL_LockTextureToSurface (), подобно на SDL_LockTexture (), но третира заключената област като SDL Surface, плюс е добавен нов режим на смесване SDL_BLENDMODE_MUL.
Функцията SDL_GameControllerTypeForIndex () предоставя заключение за вида на контролера за игри (Xbox 360, Xbox One, PS3, PS4, Nintendo Switch Pro).
Добавени функции SDL_JoystickFromPlayerIndex (), SDL_JoystickSetPlayerIndex (), SDL_GameControllerSetPlayerIndex () и SDL_GameControllerFromPlayerIndex () за да определите и инсталирате устройството, свързано с индекса на плейъра.
докато за Android е добавена възможността за улавяне на звук с помощта на OpenSL-ES и поддръжка за използване на Bluetooth Steam Controller като контролер за игри.
От останалите споменати промени:
- Добавен е макросът SDL_zeroa () към нула масив от елементи.
- Добавена е функция SDL_HasARMSIMD () за дефиниране на поддръжка за инструкции ARM SIMD на ARMv6 + CPU.
- За Linux системи са внедрени функциите .SDL_HINT_VIDEO_X11_WINDOW_VISUALID (дефиниция на изходен идентификатор за нови прозорци X11) и SDL_HINT_VIDEO_X11_FORCE_EGL (опция за използване на GLX или EGL за X11).
Как да инсталирам Simple DirectMedia Layer на Linux?
Инсталирането на тази библиотека на Linux е доста просто, тъй като повечето дистрибуции на Linux я имат в своите хранилища.
В случай на Debian, Ubuntu и дистрибуции, получени от тях, ще трябва само да стартирате следните команди в терминал:
sudo apt-get install libsdl2-2.0 sudo apt-get install libsdl2-dev
Докато за случая с тези, които са uArch Linux suarios, ние просто трябва да изпълним следното:
sudo pacman -S sdl2
В случая с тези, които са потребители на Fedora, Centos, RHEL или всякаква дистрибуция, базирана на тях, те просто трябва да изпълнят следната команда:
sudo yum install SDL2 sudo yum install SDL2-devel
За всички останали дистрибуции на Linux, те могат да търсят пакета "sdl" или "libsdl" за инсталиране или да изтеглят и компилират изходния код.
Те правят това с:
hg clone https://hg.libsdl.org/SDL SDL cd SDL mkdir build cd build ./configure make sudo make install