Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° SDL (Simple DirectMedia Layer), ΠΊΠΎΡΡΠΎ ΡΠ΅Π»ΠΈ Π΄Π° ΡΠ»Π΅ΡΠ½ΠΈ Π½Π°ΠΏΠΈΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ³ΡΠΈ ΠΈ ΠΌΡΠ»ΡΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΎΡΠΌΠ΅Π½ΠΈΡ Π° ΠΏΡΠΎΠΌΡΠ½Π°ΡΠ°, ΠΊΠΎΡΡΠΎ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°ΡΠ΅ ΠΊΠ»ΠΎΠ½Π° SDL3 Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Wayland Π² ΡΡΠ΅Π΄ΠΈ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡΠΈ Π΅Π΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° ΠΈ Π½Π° Wayland, ΠΈ Π½Π° X11. ΠΠ°ΡΠΎ ΠΏΡΠΈΡΠΈΠ½Π° ΡΠ΅ ΠΏΠΎΡΠΎΡΠ²Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ° ΡΠ΅ΡΠ΅Π½ΠΈ Π² Π΅ΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π½Π° Wayland, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ Π±Π»ΠΎΠΊΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΏΠΎΠ²ΡΡΡ Π½ΠΎΡΡΠΈ ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° FIFO (vsync). ΠΠΎΡΠΎΡΠ΅Π½ΠΈΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π²ΠΎΠ΄ΡΡ Π΄ΠΎ ΡΠΏΠ°Π΄ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΈ Π½Π΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ Π½Π°ΠΏΡΠ»Π½ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈ Π±Π΅Π· ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ fifo-v1 ΠΈ commit-timing-v1.
ΠΡΠ±Π΅Π»ΡΠ·Π²Π° ΡΠ΅, ΡΠ΅ Π±Π΅Π· ΡΠ΅ΡΠ°Π²Π°Π½Π΅ Π½Π° ΡΠ΅Π·ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ΡΠΎ ΠΎΡ X11 Π½Π° Wayland Π½Π΅ Π½ΠΎΡΠΈ Π½ΠΈΠΊΠ°ΠΊΠ²ΠΈ ΠΏΡΠ΅Π΄ΠΈΠΌΡΡΠ²Π° Π·Π° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΈΠ³ΡΠΈ, Π° ΡΠ°ΠΌΠΎ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ ΡΠ΅ΡΠΈΠΎΠ·Π΅Π½ ΡΠΏΠ°Π΄ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΈ ΡΠ΅Π³ΡΠ΅ΡΠΈΠΈ. ΠΠ»Π°Π½ΠΈΡΠ°Ρ Π΄Π° ΡΠ΅ Π²ΡΡΠ½Π°Ρ ΠΊΡΠΌ ΠΎΠ±ΡΡΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ Π½Π° SDL Π½Π° Wayland ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π΅Π΄Π²Π° ΡΠ»Π΅Π΄ ΠΎΠ΄ΠΎΠ±ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈΡΠ΅ fifo-v1 ΠΈ commit-timing-v1 ΠΈ ΡΡΡ Π½ΠΎΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π² ΡΡΠ°Π±ΠΈΠ»Π½ΠΈ Π²Π΅ΡΡΠΈΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½Π½ΠΈ ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡΡΠΈ.
ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π°, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΡΠΏΠΎΠΌΠ΅Π½Π΅ ΠΏΡΡΠ²ΠΈΡ ΡΠ΅ΡΡΠΎΠ² ΠΏΠ°ΠΊΠ΅Ρ Π½Π° Π½ΠΎΠ²ΠΈΡ ΠΊΠ»ΠΎΠ½ SDL 3, Π² ΠΊΠΎΠΉΡΠΎ Π΅ ΠΈΠ·Π²ΡΡΡΠ΅Π½Π° ΠΏΡΠ΅ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π½ΡΠΊΠΎΠΈ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠΈ, Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΈ ΡΠ° Π½Π΅ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² API ΠΈ Π΅ ΠΈΠ·Π²ΡΡΡΠ΅Π½ΠΎ Π³ΠΎΠ»ΡΠΌΠΎ ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΡΡΠ°ΡΠ΅Π»ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, Π·Π°Π³ΡΠ±ΠΈΠ»ΠΈ Π°ΠΊΡΡΠ°Π»Π½ΠΎΡΡ Π² ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² SDL 3 Π΅ Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΏΡΠ΅ΡΠ°Π±ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄ΡΡ Π·Π° ΡΠ°Π±ΠΎΡΠ° ΡΡΡ Π·Π²ΡΠΊ, ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° OpenGL ES 1.0 ΠΈ DirectFB, ΠΏΡΠ΅ΠΌΠ°Ρ
Π½Π°Ρ Π΅ ΠΊΠΎΠ΄ΡΡ Π·Π° ΡΠ°Π±ΠΎΡΠ° Π½Π° ΠΎΡΡΠ°ΡΠ΅Π»ΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ, ΠΊΠ°ΡΠΎ QNX, Pandora, WinRT ΠΈ OS/2. Π API Π·Π° 2D ΡΠΈΡΡΠ²Π°Π½Π΅ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ Π±Π΅ΠΊΠ΅Π½Π΄ Π·Π° ΡΠΈΡΡΠ²Π°Π½Π΅ ΡΡΠ΅Π· API Vulkan, ΡΠ°Π·ΡΠΈΡΠ΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π·Π° HDR ΠΈ ΡΠ²Π΅ΡΠΎΠ²ΠΈ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°. ΠΠ°ΠΌΠ΅Π½Π΅Π½ Π΅ API Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΈ ΠΏΡΠΎΠ·ΠΎΡΡΠΈ. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π²ΠΈΠ΄Π΅ΠΎΠ·Π°Ρ
Π²Π°Ρ Ρ ΡΠ΅Π±ΠΊΠ°ΠΌΠ΅ΡΠ° ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»Π΅ΡΠΈ ΠΈ ΡΠΈΡΡΠΎΠ²ΠΈ Ρ
ΠΈΠΌΠΈΠΊΠ°Π»ΠΊΠΈ. ΠΠΎΠ±Π°Π²Π΅Π½ΠΈ ΡΠ° Π½ΠΎΠ²ΠΈ Π΄ΠΈΠ°Π»ΠΎΠ·ΠΈ Π·Π° ΠΎΡΠ²Π°ΡΡΠ½Π΅ ΠΈ Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅. ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½ ΠΌΡΠ»ΡΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½ΠΈΡΡ ΡΡΡΠ²ΡΡ PipeWire.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
