Simple DirectMedia Layer

Материал из Википедии — свободной энциклопедии
Текущая версия страницы покане проверялась опытными участниками и может значительно отличаться отверсии, проверенной 30 июня 2020 года; проверки требуют16 правок.
Перейти к навигацииПерейти к поиску
Simple DirectMedia Layer
Логотип программы Simple DirectMedia Layer
Типбиблиотека функций
АвторSam Lantinga[вд]
РазработчикSam Lantinga[вд]
Написана наСи[2][3][…]
Операционные системыWindows, GNU/Linux, Android, macOS, iOS, FreeBSD и Haiku
Дата выпуска1998
Последняя версия
Репозиторийgithub.com/libsdl-org/SDL
Лицензиялицензия zlib[4] и LGPL-2.1[вд]
Сайтlibsdl.org (англ.)
Логотип Викисклада Медиафайлы на Викискладе
Simple DirectMedia Layer

Simple DirectMedia Layer (SDL) —свободнаякроссплатформенная мультимедийнаябиблиотека, реализующая единый программный интерфейс к графической подсистеме, звуковым устройствам и средствам ввода для широкого спектра платформ. Данная библиотека активно используется при написании кроссплатформенныхмультимедийных программ (в основном игр).

Официально поддерживаемыеоперационные системы:Linux,Microsoft Windows,macOS,iOS иAndroid[5].

SDLAPI доступны для языков:C,C++,C#,VB.NET,D,Ada,Vala,Eiffel,Haskell,Erlang,Euphoria,Java,Lisp,Lua,ML,Pascal,Perl,PHP,Pike,PureBasic,Python,Go[6],Rust иRuby[7].

Основная часть SDL содержит базовый, весьма ограниченный спектр возможностей. Дополнительную функциональность обеспечивают библиотеки расширений, которые обычно входят в поставку SDL.

Начиная с версии 2.0, SDL распространяется под условиями лицензииzlib; до этого использовалась лицензияGNULGPL[8].

Содержание

История

[править |править код]

SDL создал Сэм Лантинга, будучи ведущим программистом компанииLoki Entertainment Software. История SDL начинается со времён, когда Сэм работал над программой-эмуляторомMicrosoft Windows дляMacintosh. Он заметил, что многие куски кода без проблем могут работать наLinux. И он решил создать небольшую библиотеку, чтобы ей могли воспользоваться другие программисты. В октябре 1997 был выпущен релиз библиотеки с версией 0.3, а позже эту библиотеку вовсю использовала компанияLoki Software для портирования игр подLinux.

После банкротства Loki Software Сэм работал в качестве ведущего разработчика вBlizzard, где велись работы по портированиюWorld of Warcraft на Linux, но в компании решили закрыть проект.

С июля 2012 года Сэм присоединился к команде разработчиковValve, где занимается дальнейшей разработкой SDL.

Структура

[править |править код]
Архитектура SDL

SDL сам по себе довольно прост. Его можно рассматривать как тонкую прослойку, обеспечивающую поддержку для 2D-операций над пикселями, звука, доступа к файлам, обработки событий и т. п. Он часто используется в дополнение кOpenGL, предоставляя поддержку мыши, клавиатуры и джойстиков.

Библиотека состоит из нескольких подсистем, таких как Video, Audio,CD-ROM, Joystick и Timer. В дополнение к этой базовой низкоуровневой функциональности, существует ряд стандартных библиотек, предоставляющих дополнительную функциональность:

  • SDL_image — поддержка различных растровых форматов[9][10]
  • SDL_mixer — функции для организации сложного аудио, в основном, сведение звука из нескольких источников[11][12]
  • SDL_net — поддержка сетевых функций[13][14]
  • SDL_ttf — поддержка шрифтов TrueType[15][16]
  • SDL_rtf — отрисовка текста в формате RTF (доступна только для SDL 1.2)[17]

Γалерея

[править |править код]

См. также

[править |править код]

Примечания

[править |править код]
  1. 3.4.0 — 2026.
  2. The sdl Open Source Project on Open Hub: Languages Page — 2006.
  3. About SDL
  4. https://github.com/libsdl-org/SDL/blob/main/LICENSE.txt
  5. Simple DirectMedia Layer . Архивировано изоригинала 16 августа 2013 года.
  6. veandco/go-sdl2. — 2020-03-26. Архивировано 3 августа 2020 года.
  7. Simple DirectMedia Layer - Language Bindings . www.libsdl.org. Дата обращения: 5 марта 2019. Архивировано 12 марта 2019 года.
  8. Simple DirectMedia Layer - License . www.libsdl.org. Дата обращения: 5 марта 2019. Архивировано 13 марта 2019 года.
  9. SDL_image 2.0 . www.libsdl.org. Дата обращения: 5 марта 2019. Архивировано 28 февраля 2019 года.
  10. SDL_image 1.2 . www.libsdl.org. Дата обращения: 5 марта 2019. Архивировано 1 марта 2019 года.
  11. SDL_mixer 2.0 . www.libsdl.org. Дата обращения: 5 марта 2019. Архивировано 16 марта 2019 года.
  12. SDL_mixer 1.2 . www.libsdl.org. Дата обращения: 5 марта 2019. Архивировано 1 марта 2019 года.
  13. SDL_net 2.0 . www.libsdl.org. Дата обращения: 5 марта 2019. Архивировано 2 марта 2019 года.
  14. SDL_net 1.2 . www.libsdl.org. Дата обращения: 5 марта 2019. Архивировано 19 февраля 2019 года.
  15. SDL_ttf 2.0 . www.libsdl.org. Дата обращения: 5 марта 2019. Архивировано 6 марта 2019 года.
  16. SDL_ttf 1.2 . www.libsdl.org. Дата обращения: 5 марта 2019. Архивировано 2 марта 2019 года.
  17. SDL_rtf 0.1 . www.libsdl.org. Дата обращения: 5 марта 2019. Архивировано 27 февраля 2019 года.

Литература

[править |править код]

Ссылки

[править |править код]
Источник —https://ru.wikipedia.org/w/index.php?title=Simple_DirectMedia_Layer&oldid=149818567
Категории:
Скрытые категории: