Vydanie multimediálnej knižnice SDL 3.4.0

SDL 3.4.0 (Simple DirectMedia Layer) je teraz k dispozícii. Táto knižnica je navrhnutá tak, aby zjednodušila vývoj hier a multimediálnych aplikácií a ponúka funkcie ako hardvérovo akcelerovaná 2D a 3D grafika, spracovanie vstupu, prehrávanie zvuku a 3D vykresľovanie prostredníctvom OpenGL, OpenGL ES, Metal, Direct3D a Vulkan. Kód je napísaný v jazyku C a licencovaný pod licenciou Zlib. Pre použitie SDL v projektoch napísaných v rôznych programovacích jazykoch sú k dispozícii väzby.

SDL 3.4.0 je druhou hlavnou stabilnou vetvou v sérii SDL 3.x – prvá stabilná vetva bola ohlásená ako 3.2.x, zatiaľ čo 3.3.x bola označená ako experimentálna. Medzi hlavné zmeny v SDL 3.4.0 patrí vylepšená prenositeľnosť medzi 3D GPU API a 2D rendering API, rozšírená podpora kompilácie WebAssambly pomocou kompilátora Emscripten, vylepšená podpora grafických tabletov a digitálnych pier a natívna podpora formátu obrázkov PNG.

Medzi nové funkcie v SDL 3.4.0 patria:

  • Bola pridaná vstavaná podpora pre obrázky PNG s funkciami SDL_LoadPNG(), SDL_LoadPNG_IO(), SDL_SavePNG() a SDL_SavePNG_IO() na prácu s nimi. Boli pridané funkcie SDL_LoadSurface() a SDL_LoadSurface_IO() na určenie formátu (PNG alebo BMP) a načítanie obrázkov ako povrchov.
  • Pridaná funkcia SDL_RotateSurface() na vytvorenie otočenej kópie povrchu.
  • Pridaná funkcia SDL_CreateAnimatedCursor() na vytváranie farebných animovaných kurzorov, ako aj príznak SDL_HINT_MOUSE_DPI_SCALE_CURSORS na automatické škálovanie kurzorov na základe úrovne priblíženia obrazovky.
  • Pridané funkcie SDL_SetWindowProgressState(), SDL_SetWindowProgressValue(), SDL_GetWindowProgressState() a SDL_GetWindowProgressValue() na zobrazenie priebehu operácie v ikone na paneli úloh aplikácie.
  • Pridané vlastnosti pre používanie rozhrania GPU API so starším hardvérom.
  • Pridané vlastnosti SDL_PROP_GPU_DEVICE_CREATE_VULKAN_OPTIONS_POINTER a SDL_PROP_GPU_DEVICE_CREATE_VULKAN_REQUIRE_HARDWARE_ACCELERATION_BOOLEA na konfiguráciu a povolenie funkcií rozhrania Vulkan API pri vytváraní zariadení GPU.
  • Pridaná funkcia SDL_GetGPUDeviceProperties() na zistenie informácií o GPU.
  • Pridané funkcie SDL_CreateGPURenderer() a SDL_GetGPURendererDevice() na povolenie 2D vykresľovania pomocou GPU, ako aj SDL_SetGPURenderStateFragmentUniforms(), SDL_SetGPURenderState() a SDL_DestroyGPURenderState() na povolenie fragmentových shadrov pre 2D vykresľovanie.
  • Pre 2D GPU renderovanie je teraz k dispozícii podpora pre YUV textúry a HDR. Bola pridaná podpora pre textúry s paletami pomocou funkcií SDL_GetTexturePalette() a SDL_SetTexturePalette(). Boli pridané funkcie SDL_GetPixelFormatFromGPUTextureFormat() a SDL_GetGPUTextureFormatFromPixelFormat() na konverziu formátov textúr, ako aj parametre SDL_PROP_TEXTURE_CREATE_GPU_TEXTURE_POINTER a SDL_PROP_TEXTURE_GPU_TEXTURE_POINTER na vytváranie 2D textúr z textúr GPU. Na konfiguráciu textúr boli pridané funkcie SDL_RenderTexture9GridTiled(), SDL_GetDefaultTextureScaleMode(), SDL_SetDefaultTextureScaleMode(), SDL_GetRenderTextureAddressMode(), SDL_SetRenderTextureAddressMode().
  • Pridaný parameter SDL_SCALEMODE_PIXELART na použitie algoritmu škálovania optimalizovaného pre pixelovú grafiku.
  • Sú implementované udalosti SDL_EVENT_DISPLAY_USABLE_BOUNDS_CHANGED, SDL_EVENT_SCREEN_KEYBOARD_SHOWN, SDL_EVENT_SCREEN_KEYBOARD_HIDDEN, SDL_EVENT_PINCH_BEGIN, SDL_EVENT_PINCH_UPDATE, SDL_EVENT_PINCH_END a SDL_EVENT_AUDIO_DEVICE_ADDED, ktoré sa spúšťajú pri zmene hraníc, zobrazení/skrytí klávesnice na obrazovke, gestách na obrazovke a pridaní zvukového zariadenia.
  • Pridané funkcie SDL_PutAudioStreamDataNoCopy() a SDL_PutAudioStreamPlanarData() pre efektívnejšie spracovanie zvukových streamov.
  • Pridaná podpora pre herné ovládače Nintendo Switch 2 pripojené cez USB. Rozšírená podpora pre ovládače 8BitDo, FlyDigi a Hand Held Legend SInput.
  • Na zlepšenie výkonu aplikácií WebAssambly vytvorených pomocou kompilátora Emscripten bola pridaná funkcia SDL_SetWindowFillDocument() a implementované parametre SDL_WINDOW_FILL_DOCUMENT, SDL_PROP_WINDOW_CREATE_EMSCRIPTEN_CANVAS_ID_STRING a SDL_PROP_WINDOW_CREATE_EMSCRIPTEN_KEYBOARD_ELEMENT_STRING.
  • Na platforme Linux Implementovaná podpora pre atomické operácie pri použití KMSDRM, aktivované pomocou vlastnosti SDL_HINT_KMSDRM_ATOMIC. Pridaný parameter SDL_PROP_DISPLAY_WAYLAND_WL_OUTPUT_POINTER na dotazovanie výstupného zariadenia wl_output spojeného s obrazovkou v prostrediach založených na Waylande.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre stránky s DDoS ochranou, VPS VDS servery 🔥 Kúpte si spoľahlivý webhosting s ochranou DDoS, VPS VDS servery | ProHoster