Simple DirectMedia Layer

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Simple DirectMedia Layer
SDL logo.png
SDL
Тип

API

Разработчик

Сэм Лантинга

Написана на

C[1]

Операционная система

Кроссплатформенное программное обеспечение

Последняя версия

2.0.3

Кандидат в релизы

2.0 (2 июня 2013)

Лицензия

zlib (с версии 2.0);
GNU LGPL (до 2.0)

Сайт

libsdl.org

Simple DirectMedia Layer

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

Официально поддерживаются операционные системы: Linux, Microsoft Windows, Mac OS X, iOS и Android[2].

SDL API доступны для языков: C, C++, C#, VB.NET, D, Ada, Vala, Eiffel, Haskell, Erlang, Euphoria, Java, Lisp, Lua, ML, Pascal, Perl, PHP, Pike, Python и Ruby.

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

Начиная с версии 2.0, SDL распространяется под условиями лицензии zlib; до этого использовалась лицензия GNU LGPL, что позволяло свободно использовать библиотеку в коммерческих программах при условии, что она используется в них как динамически подключаемая библиотека.

История[править | править исходный текст]

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 — поддержка различных растровых форматов
  • SDL mixer — функции для организации сложного аудио, в основном, сведение звука из нескольких источников
  • SDL net — поддержка сетевых функций
  • SDL ttf — поддержка шрифтов TrueType
  • SDL rtf — отрисовка текста в формате RTF

Γалерея[править | править исходный текст]

  1. Simple DirectMedia Layer
  2. Simple DirectMedia Layer. Архивировано из первоисточника 16 августа 2013.

Примечания[править | править исходный текст]

См. также[править | править исходный текст]

Ссылки[править | править исходный текст]