SDL 2.0.18 Media Library Liberigo

La biblioteko SDL 2.0.18 (Simple DirectMedia Layer) estis publikigita, celita al simpligo de la verkado de ludoj kaj plurmediaj aplikoj. La SDL-biblioteko disponigas ilojn kiel hardvar-akcelita 2D kaj 3D grafika eligo, enigprilaborado, sonreproduktado, 3D eligo per OpenGL/OpenGL ES/Vulkan kaj multaj aliaj rilataj operacioj. La biblioteko estas skribita en C kaj estas distribuita sub la permesilo zlib. Ligiloj estas disponigitaj por uzi SDL-kapablojn en projektoj en diversaj programlingvoj. La bibliotekkodo estas distribuita sub la permesilo Zlib.

En la nova eldono:

  • Por ĉiu funkcio, informoj estas provizitaj pri la SDL-versio en kiu la funkcio aperis. Aŭtomata sinkronigo de vikia dokumentaro kun kapdosieroj estas provizita.
  • Novaj funkcioj aldonitaj:
    • SDL_RenderGeometry() kaj SDL_RenderGeometryRaw() por bildi arbitrajn formojn uzante la 2D Render API.
    • SDL_SetTextureUserData() kaj SDL_GetTextureUserData() por ligi aplikajn datumojn al teksturo.
    • SDL_RenderWindowToLogical() kaj SDL_RenderLogicalToWindow() por konverti inter fenestrokoordinatoj kaj logikaj bildkoordinatoj.
    • SDL_RenderSetVSync() por ebligi eligan sinkronigon kun vertikala malplena pulso (vblank).
    • SDL_PremultiplyAlpha() por apliki travideblecon al blokoj de pikseloj en la formato SDL_PIXELFORMAT_ARGB8888.
    • SDL_SetWindowMouseRect () kaj SDL_GetWindowMouseRect () por limigi la movon de la muskursoro al specifa areo de la fenestro.
    • SDL_GameControllerHasRumble(), SDL_GameControllerHasRumbleTriggers(), SDL_JoystickHasRumble() kaj SDL_JoystickHasRumbleTriggers() por kontroli ĉu la ludregilo kaj stirstango subtenas la adaptan vibran efikon (bruado)
    • SDL_GetWindowICCProfile() por akiri la ICC-kolorprofilon de la fenestro (la evento SDL_WINDOWEVENT_ICCPROF_CHANGED estas proponita por kontroli profilŝanĝojn).
  • Novaj atributoj estis aldonitaj: SDL_HINT_APP_NAME por transdoni informojn pri la nomo de la aplikaĵo kaj SDL_HINT_VIDEO_EGL_ALLOW_TRANSPARENCY por ebligi travideblecon por EGL-fenestroj.
  • Aldonita nova fenestra evento, SDL_WINDOWEVENT_DISPLAY_CHANGED, kiu estas generita kiam la ekrano sur kiu la fenestro estas montrita ŝanĝiĝas.
  • Eblas difini la precizajn parametrojn de la movo de la musrado uzante la kampojn "preciseX" kaj "preciseY" en la evento-parametroj.
  • La funkcio SDL_WaitEvent() estis restrukturita por redukti CPU-ŝarĝon.
  • La hidapi API estis movita al la publika kategorio kaj nun haveblas per la kapdosiero SDL_hidapi.h.
  • Sur la Vindoza platformo, plibonigita detekto de relativa musmovado en Vindoza Remote Desktop. Aldonita SDL_HINT_IME_SHOW_UI-atributo por montri denaskajn interfacajn komponantojn (kaŝitajn defaŭlte). Por UWP-aplikoj, WGI estas uzata anstataŭ XInput por plibonigi subtenon por enigregiloj.
  • Por la Linukso-platformo, la sekvaj atributoj estis efektivigitaj: SDL_HINT_SCREENSAVER_INHIBIT_ACTIVITY_NAME por ligaj agoj montrataj kiam la ekranŝparo estas malŝaltita; SDL_HINT_LINUX_JOYSTICK_CLASSIC por elekti kiun aparaton (/dev/input/js* aŭ /dev/input/event*) uzi por la stirstango; SDL_HINT_JOYSTICK_DEVICE por agordi la aparaton malfermi por la stirstango. Aldonita SDL_LinuxSetThreadPriorityAndPolicy() funkcio por kontroli fadenan prioritaton.
  • Por la Android-platformo, subteno por audioproduktado kaj kapto uzante la AAudio API estis efektivigita. Defaŭlte, subteno por la Steam-Regilo estas malŝaltita (la flago SDL_HINT_JOYSTICK_HIDAPI_STEAM estis proponita por ebligi).

Aldono: Unu el la aŭtoroj de SDL, Ryan Gordon (icculus), diris, ke li planas aldoni simplan 3D API al SDL, kiu subtenas la API-kapablojn de modernaj GPUoj (Vulkan, Direct3D 12, Metalo). Ĉi tiu evoluo estos financita de Epic Games kiel parto de la programo Epic Megagrant. Gordon prezentis peton por la subvencio en majo 2021, kaj antaŭ du semajnoj ricevis pozitivan respondon.

fonto: opennet.ru

Aldoni komenton