SDL 2.0.22 የሚዲያ ቤተ መፃህፍት መለቀቅ

የጨዋታዎችን እና የመልቲሚዲያ አፕሊኬሽኖችን አጻጻፍ ለማቃለል ያለመ SDL 2.0.22 (ቀላል ዳይሬክትሚዲያ ንብርብር) ቤተ-መጽሐፍት ተለቋል። የኤስዲኤል ቤተ-መጽሐፍት እንደ ሃርድዌር-የተጣደፈ 2D እና 3D ግራፊክስ ውፅዓት፣የግብአት አያያዝ፣የድምጽ መልሶ ማጫወት፣የ3D ውፅዓት በOpenGL/OpenGL ES/Vulkan እና ሌሎች በርካታ ተዛማጅ ስራዎችን ያቀርባል። ቤተ መፃህፍቱ በ C ቋንቋ ተፅፎ በዚሊብ ፍቃድ ተሰራጭቷል። በተለያዩ የፕሮግራሚንግ ቋንቋዎች በፕሮጀክቶች ውስጥ የኤስዲኤልን አቅም ለመጠቀም አስፈላጊዎቹ ማሰሪያዎች ቀርበዋል።

በአዲሱ እትም፡-

  • ለዌይላንድ ፕሮቶኮል የተሻሻለ ድጋፍ። መጀመሪያ ላይ ለዋይላንድ እና ለኤክስ11 በአንድ ጊዜ ድጋፍ በሚሰጡ አካባቢዎች የዋይላንድ ፕሮቶኮልን በነባሪነት ወደ መጠቀም ለመቀየር ታቅዶ ነበር ነገርግን በጨዋታዎች እና በNVIDIA አሽከርካሪዎች ላይ ከዋይላንድ ጋር በተያያዙ ችግሮች ምክንያት ሽግግሩን ለሌላ ጊዜ ለማስተላለፍ ተወስኗል (በዋይላንድ አካባቢዎች የ XWayland አካል ፣ የ X11 ፕሮቶኮልን በመጠቀም የተገኘ ውጤት)። ዌይላንድን ለመጠቀም ማመልከቻውን ከመጀመርዎ በፊት የአካባቢን ተለዋዋጭ "SDL_VIDEODRIVER=wayland" ማዘጋጀት ወይም "SDL_SetHint(SDL_HINT_VIDEODRIVER, "wayland,x11") የሚለውን ተግባር ወደ SDL_Init () ከመደወልዎ በፊት ወደ ኮድ ማከል ይችላሉ. ከዌይላንድ ጋር ማጠናቀር ቢያንስ 1.18.0 የሊብዌይላንድ ደንበኛ ስሪት ያስፈልገዋል።
  • ከኤስዲኤል ሪንደርደር ጋር የተገናኘውን መስኮት ለማግኘት የSDL_RenderGetWindow() ተግባር ታክሏል።
  • አራት ማዕዘን ቦታዎችን ለመቆጣጠር የተግባር ስብስብ ታክሏል (የነጥቦችን መከሰት መወሰን ፣ ማጽዳት ፣ ማነፃፀር ፣ ማዋሃድ ፣ ወዘተ) ፣ በተንሳፋፊ ነጥብ ቁጥሮች ላይ በመመስረት መጋጠሚያዎች እና መጠኖች: SDL_PointInFRect () ፣ SDL_FRectEmpty () ፣ SDL_FRectEquals () ፣ SDL_FRectEqualsEPsilon ()፣ SDL_HasIntersectionF()፣ SDL_IntersectFRect()፣ SDL_UnionFRect()፣ SDL_EncloseFPoints() እና SDL_IntersectFRectAndLine()።
  • የጽሑፍ ግቤት ቦታው መታየቱን ለማረጋገጥ የኤስዲኤል_ኢስቴክስትግቤት ሾውን() ተግባር ታክሏል።
  • የSDL_ClearComposition() ተግባር የግቤት ስልትን (IME) ሳያሰናክል የጽሑፍ ግቤት ቦታውን ለማጽዳት ታክሏል።
  • ረጅም የጽሑፍ ግብዓት ቦታዎችን ለማስተናገድ የኤስዲኤል_TEXTEDITING_EXT ክስተት ታክሏል እና ይህን ክስተት ለማስቻል የSDL_HINT_IME_SUPPORT_EXTENDED_TEXT ባንዲራ።
  • አንጻራዊ ሁነታ ሲነቃ የመዳፊትን መሃከል ብቻ ከመስኮት ይልቅ መገደቡን ለማስቻል የSDL_HINT_MOUSE_RELATIVE_MODE_CENTER ባንዲራ ታክሏል።
  • የመዳፊት አዝራሮችን ሲጫኑ አውቶማቲክ የመዳፊት ማንሳት ነቅቷል። እሱን ለማሰናከል የኤስዲኤል_HINT_MOUSE_AUTO_CAPTURE ባንዲራ ቀርቧል።
  • የSDL_HINT_VIDEO_FOREIGN_WINDOW_OPENGL እና SDL_HINT_VIDEO_FOREIGN_WINDOW_VULKAN ባንዲራዎች ስለ OpenGL ወይም Vulkan በውጫዊ መስኮት አጠቃቀም መረጃን ታክለዋል።
  • የመጨረሻው የመተግበሪያ መስኮት ሲዘጋ የSDL_QUIT ክስተት እንዲደርስ ለማስቻል የSDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE ባንዲራ ታክሏል።
  • የROG Chakram mouseን እንደ ጆይስቲክ ለማከም የSDL_HINT_JOYSTICK_ROG_CHAKRAM ባንዲራ ታክሏል።
  • ለሊኑክስ የ_NET_WM_WINDOW_TYPE ልኬትን ወደ መስኮቶች ለማዘጋጀት የSDL_HINT_X11_WINDOW_TYPE ባህሪ ታክሏል።
  • ለሊኑክስ የኤስዲኤል_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR ባንዲራ ታክሏል xdg-decorationን ከሚደግፉ የተዋሃዱ አገልጋዮች ጋር libdecorን ለመጠቀም።
  • ለአንድሮይድ የSDL_AndroidSendMessage() ተግባር የዘፈቀደ ትዕዛዝ ለኤስዲኤል ጃቫ ተቆጣጣሪ ለመላክ ተተግብሯል።

ምንጭ: opennet.ru

አስተያየት ያክሉ