Русская Википедия:Simple DirectMedia Layer
Simple DirectMedia Layer (SDL) — свободная кроссплатформенная мультимедийная библиотека, реализующая единый программный интерфейс к графической подсистеме, звуковым устройствам и средствам ввода для широкого спектра платформ. Данная библиотека активно используется при написании кроссплатформенных мультимедийных программ (в основном игр).
Официально поддерживаемые операционные системы: Linux, Microsoft Windows, macOS, iOS и Android[1].
SDL API доступны для языков: C, C++, C#, VB.NET, D, Ada, Vala, Eiffel, Haskell, Erlang, Euphoria, Java, Lisp, Lua, ML, Pascal, Perl, PHP, Pike, PureBasic, Python, Go[2], Rust и Ruby[3].
Основная часть SDL содержит базовый, весьма ограниченный спектр возможностей. Дополнительную функциональность обеспечивают библиотеки расширений, которые обычно входят в поставку SDL.
Начиная с версии 2.0, SDL распространяется под условиями лицензии zlib; до этого использовалась лицензия GNU LGPL.[4]
История
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 сам по себе довольно прост. Его можно рассматривать как тонкую прослойку, обеспечивающую поддержку для 2D-операций над пикселями, звука, доступа к файлам, обработки событий и т. п. Он часто используется в дополнение к OpenGL, предоставляя поддержку мыши, клавиатуры и джойстиков.
Библиотека состоит из нескольких подсистем, таких как Video, Audio, CD-ROM, Joystick и Timer. В дополнение к этой базовой низкоуровневой функциональности, существует ряд стандартных библиотек, предоставляющих дополнительную функциональность:
- SDL_image — поддержка различных растровых форматов[5][6]
- SDL_mixer — функции для организации сложного аудио, в основном, сведение звука из нескольких источников[7][8]
- SDL_net — поддержка сетевых функций[9][10]
- SDL_ttf — поддержка шрифтов TrueType[11][12]
- SDL_rtf — отрисовка текста в формате RTF (доступна только для SDL 1.2)[13]
Γалерея
См. также
Примечания
Литература
Ссылки
- Официальная страница Шаблон:АрхивированоШаблон:Ref-en
- Введение в Simple DirectMedia Layer Шаблон:WaybackШаблон:Ref-ru
- Низкоуровневое расширение библиотеки SDLШаблон:Ref-ru
- Уроки по SDLШаблон:Ref-ru
- Справочник библиотеки SDL на русском языке Шаблон:Wayback
- Страницы с неработающими файловыми ссылками
- Русская Википедия
- Свободные библиотеки программ
- Программное обеспечение для macOS
- Графические библиотеки
- Аудиобиблиотеки
- Свободные игровые движки
- Страницы, где используется шаблон "Навигационная таблица/Телепорт"
- Страницы с телепортом
- Википедия
- Статья из Википедии
- Статья из Русской Википедии