SDL 2.0.22 ืžืขืœื“ื•ื ื’ ืคื•ืŸ ืžืขื“ื™ืข ื‘ื™ื‘ืœื™ืึธื˜ืขืง

ื“ื™ SDL 2.0.22 (Simple DirectMedia Layer) ื‘ื™ื‘ืœื™ืึธื˜ืขืง, ืึทื™ืžืขื“ ืฆื• ืกื™ืžืคึผืœืึทืคื™ื™ื™ื ื’ ื“ื™ ืฉืจื™ื™ื‘ืŸ ืคื•ืŸ ืฉืคึผื™ืœืขืจื™ื™ึท ืื•ืŸ ืžื•ืœื˜ื™ืžืขื“ื™ืึท ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื–, ืื™ื– ื‘ืืคืจื™ื™ื˜. ื“ื™ SDL ื‘ื™ื‘ืœื™ืึธื˜ืขืง ื’ื™ื˜ ืคืึทืกื™ืœืึทื˜ื™ื– ืึทื–ืึท ื•ื•ื™ ื™ื™ึทื–ื ื•ื•ืึทืจื’-ืึทืงืกืขืœืขืจื™ื™ื˜ื™ื“ 2D ืื•ืŸ 3D ื’ืจืึทืคื™ืงืก ืจืขื–ื•ืœื˜ืึทื˜, ืึทืจื™ื™ึทื ืฉืจื™ื™ึทื‘ ื”ืึทื ื“ืœื™ื ื’, ืึทื•ื“ื™ืึธ ืคึผืœื™ื™ื‘ืึทืง, 3D ืจืขื–ื•ืœื˜ืึทื˜ ื“ื•ืจืš OpenGL/OpenGL ES/Vulkan, ืื•ืŸ ืคื™ืœืข ืื ื“ืขืจืข ืคึฟืึทืจื‘ื•ื ื“ืขื ืข ืึทืคึผืขืจื™ื™ืฉืึทื ื–. ื“ื™ ื‘ื™ื‘ืœื™ืึธื˜ืขืง ืื™ื– ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ C ืื•ืŸ ืคื•ื ืื ื“ืขืจื’ืขื˜ื™ื™ืœื˜ ืื•ื ื˜ืขืจ ื“ื™ Zlib ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ. ืฆื• ื ื•ืฆืŸ SDL ืงื™ื™ืคึผืึทื‘ื™ืœืึทื˜ื™ื– ืื™ืŸ ืคึผืจืึทื“ื–ืฉืขืงืก ืื™ืŸ ืคืึทืจืฉื™ื“ืŸ ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืฉืคืจืึทื›ืŸ, ื“ื™ ื ื™ื™ื˜ื™ืง ื‘ื™ื™ื ื“ื™ื ื’ื– ื–ืขื ืขืŸ ืฆื•ื’ืขืฉื˜ืขืœื˜.

ืื™ืŸ ื“ื™ ื ื™ื™ึทืข ืžืขืœื“ื•ื ื’:

  • ื™ืžืคึผืจื•ื•ื•ื“ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื“ื™ Wayland ืคึผืจืึธื˜ืึธืงืึธืœ. ื˜ื›ื™ืœืขืก, ืขืก ืื™ื– ื’ืขื•ื•ืขืŸ ืคึผืœืึทื ื ืขื“ ืฆื• ื‘ืึทืฉื˜ื™ืžืขืŸ ืฆื• ื ื™ืฆืŸ ื“ื™ Wayland ืคึผืจืึธื˜ืึธืงืึธืœ ื“ื•ืจืš ืคืขืœื™ืงื™ื™ึทื˜ ืื™ืŸ ื™ื ื•ื•ื™ื™ืจืึทื ืžืึทื ืฅ ื•ื•ืึธืก ืฆื•ืฉื˜ืขืœืŸ ืกื™ื™ืžืึทืœื˜ื™ื™ื ื™ืึทืก ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ Wayland ืื•ืŸ X11, ืึธื‘ืขืจ ืจืขื›ื˜ ืฆื• ืคึผืจืึธื‘ืœืขืžืก ืคึฟืึทืจื‘ื•ื ื“ืŸ ืžื™ื˜ Wayland ืื™ืŸ ืฉืคึผื™ืœืขืจื™ื™ึท ืื•ืŸ NVIDIA ื“ืจื™ื•ื•ืขืจืก, ืขืก ืื™ื– ื‘ืึทืฉืœืึธืกืŸ ืฆื• ืึธืคึผืœื™ื™ื’ืŸ ื“ื™ ื™ื‘ืขืจื’ืึทื ื’ (ืื™ืŸ Wayland ื™ื ื•ื•ื™ื™ืจืึทื ืžืึทื ืฅ ืžื™ื˜ ื“ื™ XWayland ืงืึธืžืคึผืึธื ืขื ื˜, ืจืขื–ื•ืœื˜ืึทื˜ ืคึฟื•ืŸ ื“ื™ X11 ืคึผืจืึธื˜ืึธืงืึธืœ). ืฆื• ื ื•ืฆืŸ Wayland, ืื™ืจ ืงืขื ืขืŸ ืฉื˜ืขืœืŸ ื“ื™ ืกื•ื•ื™ื•ื•ืข ื•ื•ืขืจื™ืึทื‘ืึทืœื– "SDL_VIDEODRIVER=wayland" ืื™ื™ื“ืขืจ ืื™ืจ ืึธื ื”ื™ื™ื‘ืŸ ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืึธื“ืขืจ ืœื™ื™ื’ืŸ ื“ื™ ืคื•ื ืงืฆื™ืข "SDL_SetHint(SDL_HINT_VIDEODRIVER, "wayland,x11")" ืฆื• ื“ื™ ืงืึธื“ ืื™ื™ื“ืขืจ ืื™ืจ ืจื•ืคืŸ SDL_Init (). ืงืึทืžืคึผื™ื™ืœื™ื ื’ ืžื™ื˜ Wayland ืจื™ืงื•ื•ื™ื™ืขืจื– ืœืคึผื—ื•ืช ืœื™ื‘ื•ื•ื™ื™ึทืœืึทื ื“-ืงืœื™ืขื ื˜ ื•ื•ืขืจืกื™ืข 1.18.0.
  • ืฆื•ื’ืขื’ืขื‘ืŸ SDL_RenderGetWindow() ืคึฟื•ื ืงืฆื™ืข ืฆื• ื‘ืึทืงื•ืžืขืŸ ื“ื™ ืคึฟืขื ืฆื˜ืขืจ ืคึฟืึทืจื‘ื•ื ื“ืŸ ืžื™ื˜ ื“ื™ SDL ืจืขื ื“ืขืจืขืจ.
  • ืฆื•ื’ืขืœื™ื™ื’ื˜ ืึท ื’ืึทื ื’ ืคื•ืŸ ืคืึทื ื’ืงืฉืึทื ื– ืคึฟืึทืจ ืžืึทื ื™ืคึผื™ืึทืœื™ื™ื˜ื™ื ื’ ืจืขืงื˜ืึทื ื’ื’ื™ืึทืœืขืจ ื’ืขื‘ื™ื˜ืŸ (ื‘ืึทืฉื˜ื™ืžืขืŸ ื“ื™ ืคึผืึทืกื™ืจื•ื ื’ ืคื•ืŸ ืคื•ื ืงื˜ืŸ, ืงืœื™ืจื™ื ื’, ืงืึทืžืคึผืขืจื™ื ื’, ืฆื•ื ื•ื™ืคื’ื™ืกืŸ, ืืื–"ื• ื•), ืึทืคึผืขืจื™ื™ื˜ื™ื ื’ ืžื™ื˜ ืงืึธื•ืึธืจื“ืึทื ืึทืฅ ืื•ืŸ ืกื™ื–ืขืก ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ืคืœืึธื•ื˜ื™ื ื’ ืคื•ื ื˜ ื ื•ืžืขืจืŸ: SDL_PointInFRect(), SDL_FRectEmpty(), SDL_FRectEquals(), SDL_FRectEqualsEpsilon () , SDL_HasIntersectionF(), SDL_IntersectFRect(), SDL_UnionFRect(), SDL_EncloseFPoints() ืื•ืŸ SDL_IntersectFRectAndLine().
  • ืฆื•ื’ืขื’ืขื‘ืŸ 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 ืคืึธืŸ ืื™ื– ืคืืจื’ืขืœื™ื™ื’ื˜.
  • ืฆื•ื’ืขื’ืขื‘ืŸ SDL_HINT_VIDEO_FOREIGN_WINDOW_OPENGL ืื•ืŸ SDL_HINT_VIDEO_FOREIGN_WINDOW_VULKAN ืคืœืึทื’ืก ืฆื• ืงืึทื ื•ื•ื™ื™ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ื•ื•ืขื’ืŸ ื“ื™ ื ื•ืฆืŸ ืคื•ืŸ OpenGL ืึธื“ืขืจ Vulkan ืื™ืŸ ืึท ืคื•ื ื“ืจื•ื™ืกื ื“ื™ืง ืคึฟืขื ืฆื˜ืขืจ.
  • ืฆื•ื’ืขื’ืขื‘ืŸ ื“ื™ SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE ืคืึธืŸ ืฆื• ื’ืขื‘ืŸ ืขืงืกืคึผืจืขืก ืคื•ืŸ ื“ื™ SDL_QUIT ื’ืขืฉืขืขื ื™ืฉ ื•ื•ืขืŸ ื“ื™ ืœืขืฆื˜ืข ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืคึฟืขื ืฆื˜ืขืจ ืื™ื– ืคืืจืžืื›ื˜.
  • ืฆื•ื’ืขื’ืขื‘ืŸ ื“ื™ SDL_HINT_JOYSTICK_ROG_CHAKRAM ืคืึธืŸ ืฆื• ืžื™ื™ึทื›ืœ ื“ื™ ROG ื˜ืฉืึทืงืจืึทื ืžื•ื™ื– ื•ื•ื™ ืึท ื“ื–ืฉื•ื™ืกื˜ื™ืง.
  • ืคึฟืึทืจ ืœื™ื ื•ืงืก, ื“ื™ SDL_HINT_X11_WINDOW_TYPE ืึทื˜ืจื™ื‘ื™ื•ื˜ ืื™ื– ืฆื•ื’ืขื’ืขื‘ืŸ ืฆื• ืฉื˜ืขืœืŸ ื“ื™ _NET_WM_WINDOW_TYPE ืคึผืึทืจืึทืžืขื˜ืขืจ ืฆื• Windows.
  • ืคึฟืึทืจ ืœื™ื ื•ืงืก, ื“ื™ SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR ืคืึธืŸ ืื™ื– ืฆื•ื’ืขื’ืขื‘ืŸ ืคึฟืึทืจ ื ื™ืฆืŸ ืœื™ื‘ื“ืขืงืึธืจ ืžื™ื˜ ืงืึธืžืคึผืึธืกื™ื˜ืข ืกืขืจื•ื•ืขืจืก ื•ื•ืึธืก ืฉื˜ื™ืฆืŸ xdg-dekoration.
  • ืคึฟืึทืจ ืึทื ื“ืจื•ื™ื“, ื“ื™ SDL_AndroidSendMessage() ืคึฟื•ื ืงืฆื™ืข ืื™ื– ื™ืžืคึผืœืึทืžืขื ืึทื“ ืฆื• ืฉื™ืงืŸ ืึทืŸ ืึทืจื‘ื™ื˜ืจืึทืจื™ืฉ ื‘ืึทืคึฟืขืœ ืฆื• ื“ื™ SDL Java ื”ืึทื ื“ืœืขืจ.

ืžืงื•ืจ: opennet.ru

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’