SDL 2.0.18 เดฎเต€เดกเดฟเดฏ เดฒเตˆเดฌเตเดฐเดฑเดฟ เดฑเดฟเดฒเต€เดธเต

เด—เต†เดฏเดฟเดฎเตเด•เดณเตเดŸเต†เดฏเตเด‚ เดฎเตพเดŸเตเดŸเดฟเดฎเต€เดกเดฟเดฏ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเตเดŸเต†เดฏเตเด‚ เดŽเดดเตเดคเตเดคเต เดฒเดณเดฟเดคเดฎเดพเด•เตเด•เดพเตป เดฒเด•เตเดทเตเดฏเดฎเดฟเดŸเตเดŸเตเดณเตเดณ SDL 2.0.18 (เดฒเดณเดฟเดคเดฎเดพเดฏ เดกเดฏเดฑเด•เตโ€Œเดฑเตเดฑเต เดฎเต€เดกเดฟเดฏ เดฒเต†เดฏเตผ) เดฒเตˆเดฌเตเดฐเดฑเดฟ เดชเตเดฑเดคเตเดคเดฟเดฑเด•เตเด•เดฟ. เดนเดพเตผเดกเตโ€Œเดตเต†เดฏเตผ เดคเตเดตเดฐเดฟเดคเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏ 2D, 3D เด—เตเดฐเดพเดซเดฟเด•เตโ€Œเดธเต เด”เดŸเตเดŸเตโ€ŒเดชเตเดŸเตเดŸเต, เด‡เตปเดชเตเดŸเตเดŸเต เดชเตเดฐเต‹เดธเดธเตเดธเดฟเด‚เด—เต, เด“เดกเดฟเดฏเต‹ เดชเตเดฒเต‡เดฌเดพเด•เตเด•เต, OpenGL/OpenGL ES/Vulkan เดตเดดเดฟเดฏเตเดณเตเดณ 3D เด”เดŸเตเดŸเตโ€ŒเดชเตเดŸเตเดŸเตเด‚ เดฎเดฑเตเดฑเต เด…เดจเตเดฌเดจเตเดง เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเด‚ เดชเต‹เดฒเตเดณเตเดณ เดŸเต‚เดณเตเด•เตพ SDL เดฒเตˆเดฌเตเดฐเดฑเดฟ เดจเตฝเด•เตเดจเตเดจเต. เดฒเตˆเดฌเตเดฐเดฑเดฟ C เดฏเดฟเตฝ เดŽเดดเตเดคเดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต เด•เต‚เดŸเดพเดคเต† zlib เดฒเตˆเดธเตปเดธเดฟเดจเต เด•เต€เดดเดฟเดฒเดพเดฃเต เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต. เดตเดฟเดตเดฟเดง เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเดฟเด‚เด—เต เดญเดพเดทเด•เดณเดฟเดฒเต† เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเตเด•เดณเดฟเตฝ SDL เด•เดดเดฟเดตเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดฌเตˆเตปเดกเดฟเด‚เด—เตเด•เตพ เดจเตฝเด•เดฟเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต. Zlib เดฒเตˆเดธเตปเดธเดฟเดจเต เด•เต€เดดเดฟเดฒเดพเดฃเต เดฒเตˆเดฌเตเดฐเดฑเดฟ เด•เต‹เดกเต เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต.

เดชเตเดคเดฟเดฏ เดฑเดฟเดฒเต€เดธเดฟเตฝ:

  • ะ”ะปั ะบะฐะถะดะพะน ั„ัƒะฝะบั†ะธะธ ะฟั€ะตะดะพัั‚ะฐะฒะปะตะฝะฐ ะธะฝั„ะพั€ะผะฐั†ะธั ะพ ะฒะตั€ัะธะธ SDL, ะฒ ะบะพั‚ะพั€ะพะน ะดะฐะฝะฝะฐั ั„ัƒะฝะบั†ะธั ะฟะพัะฒะธะปะฐััŒ. ะžะฑะตัะฟะตั‡ะตะฝะฐ ะฐะฒั‚ะพะผะฐั‚ะธั‡ะตัะบะฐั ัะธะฝั…ั€ะพะฝะธะทะฐั†ะธั ะดะพะบัƒะผะตะฝั‚ะฐั†ะธะธ ะฒ wiki ั ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ะผะธ ั„ะฐะนะปะฐะผะธ.
  • ะ”ะพะฑะฐะฒะปะตะฝั‹ ะฝะพะฒั‹ะต ั„ัƒะฝะบั†ะธะธ:
    • SDL_RenderGeometry() ะธ SDL_RenderGeometryRaw() ะดะปั ะพั‚ั€ะธัะพะฒะบะธ ะฟั€ะพะธะทะฒะพะปัŒะฝั‹ั… ั„ะธะณัƒั€ ะฟั€ะธ ะฟะพะผะพั‰ะธ 2D Render API.
    • SDL_SetTextureUserData() ะธ SDL_GetTextureUserData() ะดะปั ะฟั€ะธะฒัะทะบะธ ะดะฐะฝะฝั‹ั… ะฟั€ะธะปะพะถะตะฝะธั ะบ ั‚ะตะบัั‚ัƒั€ะต.
    • SDL_RenderWindowToLogical() ะธ SDL_RenderLogicalToWindow() ะดะปั ะฟั€ะตะพะฑั€ะฐะทะพะฒะฐะฝะธั ะผะตะถะดัƒ ะบะพะพั€ะดะธะฝะฐั‚ะฐะผะธ ะพะบะฝะฐ ะธ ะปะพะณะธั‡ะตัะบะธะผะธ ะบะพะพั€ะดะธะฝะฐั‚ะฐะผะธ ะพั‚ั€ะธัะพะฒะบะธ.
    • SDL_RenderSetVSync() ะดะปั ะฒะบะปัŽั‡ะตะฝะธั ัะธะฝั…ั€ะพะฝะธะทะฐั†ะธะธ ะฒั‹ะฒะพะดะฐ ั ะบะฐะดั€ะพะฒั‹ะผ ะณะฐััั‰ะธะผ ะธะผะฟัƒะปัŒัะพะผ (vblank).
    • SDL_PremultiplyAlpha() ะดะปั ะฟั€ะธะผะตะฝะตะฝะธั ะฟั€ะพะทั€ะฐั‡ะฝะพัั‚ะธ ะบ ะฑะปะพะบะฐะผ ะฟะธะบัะตะปะตะน ะฒ ั„ะพั€ะผะฐั‚ะต SDL_PIXELFORMAT_ARGB8888.
    • SDL_SetWindowMouseRect() ะธ SDL_GetWindowMouseRect() ะดะปั ะพะณั€ะฐะฝะธั‡ะตะฝะธั ะดะฒะธะถะตะฝะธั ะบัƒั€ัะพั€ะฐ ะผั‹ัˆะธ ะทะฐะดะฐะฝะฝะพะน ะพะฑะปะฐัั‚ัŒัŽ ะพะบะฝะฐ.
    • SDL_GameControllerHasRumble(), SDL_GameControllerHasRumbleTriggers(), SDL_JoystickHasRumble() ะธ SDL_JoystickHasRumbleTriggers() ะดะปั ะฟั€ะพะฒะตั€ะบะธ ะฟะพะดะดะตั€ะถะบะธ ะธะณั€ะพะฒั‹ะผ ะบะพะฝั‚ั€ะพะปะปะตั€ะพะผ ะธ ะดะถะพะนัั‚ะธะบะพะผ ัั„ั„ะตะบั‚ะฐ ะฐะดะฐะฟั‚ะธะฒะฝะพะน ะฒะธะฑั€ะฐั†ะธะธ (rumble)
    • SDL_GetWindowICCProfile() ะดะปั ะฟะพะปัƒั‡ะตะฝะธั ั†ะฒะตั‚ะพะฒะพะณะพ ICC-ะฟั€ะพั„ะธะปั ะพะบะฝะฐ (ะดะปั ะฟั€ะพะฒะตั€ะบะธ ะธะทะผะตะฝะตะฝะธั ะฟั€ะพั„ะธะปั ะฟั€ะตะดะปะพะถะตะฝะพ ัะพะฑั‹ั‚ะธะต SDL_WINDOWEVENT_ICCPROF_CHANGED).
  • ะ”ะพะฑะฐะฒะปะตะฝั‹ ะฝะพะฒั‹ะต ะฟั€ะธะทะฝะฐะบะธ: SDL_HINT_APP_NAME ะดะปั ะฟะตั€ะตะดะฐั‡ะธ ัะฒะตะดะตะฝะธะน ะพ ะฝะฐะทะฒะฐะฝะธะธ ะฟั€ะธะปะพะถะตะฝะธั ะธ SDL_HINT_VIDEO_EGL_ALLOW_TRANSPARENCY ะดะปั ะฒะบะปัŽั‡ะตะฝะธั ะฟั€ะพะทั€ะฐั‡ะฝะพัั‚ะธ ะดะปั ะพะบะพะฝ EGL.
  • ะ”ะพะฑะฐะฒะปะตะฝะพ ะฝะพะฒะพะต ัะพะฑั‹ั‚ะธะต ะพะบะฝะฐ SDL_WINDOWEVENT_DISPLAY_CHANGED, ะบะพั‚ะพั€ะพะต ะณะตะฝะตั€ะธั€ัƒะตั‚ัั ะฟั€ะธ ะธะทะผะตะฝะตะฝะธะธ ัะบั€ะฐะฝะฐ, ะฝะฐ ะบะพั‚ะพั€ะพะผ ะฟะพะบะฐะทั‹ะฒะฐะตั‚ัั ะพะบะฝะพ.
  • ะŸั€ะตะดะพัั‚ะฐะฒะปะตะฝะฐ ะฒะพะทะผะพะถะฝะพัั‚ัŒ ะพะฟั€ะตะดะตะปะตะฝะธั ั‚ะพั‡ะฝั‹ั… ะฟะฐั€ะฐะผะตั‚ั€ะพะฒ ะดะฒะธะถะตะฝะธั ะบะพะปะตัะฐ ะผั‹ัˆะธ ะฟั€ะธ ะฟะพะผะพั‰ะธ ะฟะพะปะตะน ยซpreciseXยป ะธ ยซpreciseYยป ะฒ ะฟะฐั€ะฐะผะตั‚ั€ะฐั… ัะพะฑั‹ั‚ะธั.
  • ะคัƒะฝะบั†ะธั SDL_WaitEvent() ะฟะตั€ะตั€ะฐะฑะพั‚ะฐะฝะฐ ะดะปั ัะฝะธะถะตะฝะธั ะฝะฐะณั€ัƒะทะบะธ ะฝะฐ CPU.
  • API hidapi ะฟะตั€ะตะฒะตะดั‘ะฝ ะฒ ะบะฐั‚ะตะณะพั€ะธัŽ ะฟัƒะฑะปะธั‡ะฝั‹ั… ะธ ั‚ะตะฟะตั€ัŒ ะดะพัั‚ัƒะฟะตะฝ ั‡ะตั€ะตะท ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ะน ั„ะฐะนะป SDL_hidapi.h.
  • ะะฐ ะฟะปะฐั‚ั„ะพั€ะผะต Windows ัƒะปัƒั‡ัˆะตะฝะพ ะพะฟั€ะตะดะตะปะตะฝะธะต ะพั‚ะฝะพัะธั‚ะตะปัŒะฝะพะณะพ ะดะฒะธะถะตะฝะธั ะผั‹ัˆะธ ะฒ Windows Remote Desktop. ะ”ะพะฑะฐะฒะปะตะฝ ะฟั€ะธะทะฝะฐะบ SDL_HINT_IME_SHOW_UI ะดะปั ะฟะพะบะฐะทะฐ ั€ะพะดะฝั‹ั… ะบะพะผะฟะพะฝะตะฝั‚ะพะฒ ะธะฝั‚ะตั€ั„ะตะนัะฐ (ะฟะพ ัƒะผะพะปั‡ะฐะฝะธัŽ ัะบั€ั‹ะฒะฐัŽั‚ัั). ะ”ะปั UWP-ะฟั€ะธะปะพะถะตะฝะธะน ะฒะผะตัั‚ะพ XInput ะทะฐะดะตะนัั‚ะฒะพะฒะฐะฝ WGI ะดะปั ัƒะปัƒั‡ัˆะตะฝะธั ะฟะพะดะดะตั€ะถะบะธ ะบะพะฝั‚ั€ะพะปะปะตั€ะพะฒ ะฒะฒะพะดะฐ.
  • ะ”ะปั ะฟะปะฐั‚ั„ะพั€ะผั‹ Linux ั€ะตะฐะปะธะทะพะฒะฐะฝั‹ ะฟั€ะธะทะฝะฐะบะธ: SDL_HINT_SCREENSAVER_INHIBIT_ACTIVITY_NAME ะดะปั ะฟั€ะธะฒัะทะบะธ ะดะตะนัั‚ะฒะธะน, ะพั‚ะพะฑั€ะฐะถะฐะตะผั‹ั… ะฟั€ะธ ะพั‚ะบะปัŽั‡ะตะฝะธะธ ั…ั€ะฐะฝะธั‚ะตะปั ัะบั€ะฐะฝะฐ; SDL_HINT_LINUX_JOYSTICK_CLASSIC ะดะปั ะฒั‹ะฑะพั€ะฐ ะบะฐะบะพะต ะธะท ัƒัั‚ั€ะพะนัั‚ะฒ (/dev/input/js* ะธะปะธ /dev/input/event*) ะธัะฟะพะปัŒะทะพะฒะฐั‚ัŒ ะดะปั ะดะถะพะนัั‚ะธะบะฐ; SDL_HINT_JOYSTICK_DEVICE ะดะปั ัƒัั‚ะฐะฝะพะฒะบะธ ัƒัั‚ั€ะพะนัั‚ะฒะฐ, ะพั‚ะบั€ั‹ะฒะฐะตะผะพะณะพ ะดะปั ะดะถะพะนัั‚ะธะบะฐ. ะ”ะพะฑะฐะฒะปะตะฝะฐ ั„ัƒะฝะบั†ะธั SDL_LinuxSetThreadPriorityAndPolicy() ะดะปั ัƒะฟั€ะฐะฒะปะตะฝะธั ั€ะฐััั‚ะฐะฝะพะฒะบะธ ะฟั€ะธะพั€ะธั‚ะตั‚ะพะฒ ะดะปั ะฟะพั‚ะพะบะพะฒ.
  • ะ”ะปั ะฟะปะฐั‚ั„ะพั€ะผั‹ Android ั€ะตะฐะปะธะทะพะฒะฐะฝะฐ ะฟะพะดะดะตั€ะถะบะฐ ะฒั‹ะฒะพะดะฐ ะธ ะทะฐั…ะฒะฐั‚ะฐ ะทะฒัƒะบะฐ ะฟั€ะธ ะฟะพะผะพั‰ะธ API AAudio. ะŸะพ ัƒะผะพะปั‡ะฐะฝะธัŽ ะพั‚ะบะปัŽั‡ะตะฝะฐ ะฟะพะดะดะตั€ะถะบะฐ ะบะพะฝั‚ั€ะพะปะปะตั€ะฐ Steam Controller (ะดะปั ะฒะบะปัŽั‡ะตะฝะธั ะฟั€ะตะดะปะพะถะตะฝ ะฟั€ะธะทะฝะฐะบ SDL_HINT_JOYSTICK_HIDAPI_STEAM).

ะ”ะพะฟะพะปะฝะตะฝะธะต: ะžะดะธะฝ ะธะท ะฐะฒั‚ะพั€ะพะฒ SDL ะ ะฐะนะฐะฝ ะ“ะพั€ะดะพะฝ (icculus) ัะพะพะฑั‰ะธะป, ั‡ั‚ะพ ะฟะปะฐะฝะธั€ัƒะตั‚ ะดะพะฑะฐะฒะธั‚ัŒ ะฒ SDL ะฟั€ะพัั‚ะพะน 3D API, ะฟะพะดะดะตั€ะถะธะฒะฐัŽั‰ะธะน ะฒะพะทะผะพะถะฝะพัั‚ะธ API ัะพะฒั€ะตะผะตะฝะฝั‹ั… GPU (Vulkan, Direct3D 12, Metal). ะคะธะฝะฐะฝัะธั€ะพะฒะฐั‚ัŒ ัั‚ัƒ ั€ะฐะทั€ะฐะฑะพั‚ะบัƒ ะฑัƒะดะตั‚ ะบะพะผะฟะฐะฝะธั Epic Games, ะฒ ั€ะฐะผะบะฐั… ะฟั€ะพะณั€ะฐะผะผั‹ Epic Megagrant. ะ—ะฐัะฒะบัƒ ะฝะฐ ะณั€ะฐะฝั‚ ะ“ะพั€ะดะพะฝ ะฟะพะดะฐะป ะฒ ะผะฐะต 2021, ะฐ ะดะฒะต ะฝะตะดะตะปะธ ะฝะฐะทะฐะด ะฟะพะปัƒั‡ะธะป ะฟะพะปะพะถะธั‚ะตะปัŒะฝั‹ะน ะพั‚ะฒะตั‚.

เด…เดตเดฒเด‚เดฌเด‚: opennet.ru

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•