Simple DirectMedia Layer
Simple DirectMedia Layer (SDL) — кросплатформна мультимедійна бібліотека, вільно поширювана разом із сирцевим кодом. Написана мовою C, яка надає простий інтерфейс до графіки, звуку та пристроїв вводу на різних платформах. Бібліотека SDL надає такі засоби, як швидкий вивід 2D-графіки, обробку вводу, програвання звуку, вивід 3D через OpenGL і безліч інших супутніх операцій у кросплатформовому виді, незалежно від використовуваної системи. Це спрощує створення застосунків і відеоігор, яким необхідно швидко виводити двовимірну графіку, програвати звук, використовувати просунуту обробку вводу користувача тощо. Бібліотека випускається під ліцензією LGPLv2 і підтримує щонайменше Linux, Windows, Windows CE, BeOS, Mac OS X, FreeBSD, NetBSD, OpenBSD, BSD/OS, Solaris, IRIX і QNX. Також існує ряд непідтримуваних офіційно портів на інші системи (наприклад, існують порти для Android і Wayland).
SDL logo | |
Тип | API |
---|---|
Автор(и) | Сем Лантінга |
Розробник | Sam Lantingad |
Стабільний випуск | 2.0 (12 серпня 2013 ) |
Версії | 2.0.20 (11 січня 2022)[1] |
Репозиторій | github.com/libsdl-org/SDL |
Операційна система | багатоплатформова |
Мова програмування | C |
Ліцензія | GNU Lesser General Public License |
Вебсайт | www.libsdl.org |
Simple DirectMedia Layer у Вікісховищі |
Бібліотека написана на C і «нативно» підтримує C++, проте існує також і багато прив'язок (біндінгів), що надають засоби для її використання для інших мов програмування.
SDL містить слово «layer» (укр. шар) в назві тому що насправді це бібліотека-обгортка навколо функцій специфічних для ОС. Головна мета SDL — надати спільний фреймворк доступу до тих функцій на різних системах.
Розробники використовують її для написання відеоігор чи інших мультимедійних програм, які можуть працювати на багатьох ОС включаючи Android, AmigaOS, AmigaOS 4, BeOS/Haiku, iOS, Linux, Mac OS 9, Mac OS X, MorphOS, OpenVMS, PlayStation Portable, Syllable Desktop, Symbian, webOS, та Windows. Вона керує відеовиводом, подіями, аудіо, приводом CD-ROM, потоками, доступом до мережі та таймерами.[2]
Примітно, що автор libsdl був найнятий компанією Valve, низка продуктів якої побудовані з використанням цієї бібліотеки для спрощення забезпечення багатоплатформовості.
Галерея
- Unknown Horizons
- Frets on Fire
- OpenTTD
Див. також
Література
- John R. Hall: Programming Linux Games, No Starch, ISBN 1-886411-49-2 (Перша книга про SDL, видана Loki Games, архівна онлайн версія: PDF, LaTex)
- Alberto García Serrano: Programación de videojuegos en SDL, Ediversitas, ISBN 84-95836-08-4 (spanish)
- Ernest Pazera: Focus On SDL, Muska & Lipman/Premier-Trade, ISBN 1-59200-030-4
- Ron Penton: Data Structures for Game Programmers, Muska & Lipman/Premier-Trade, ISBN 1-931841-94-2 (game programming examples with SDL)
Примітки
- Release 2.0.20
- SDL official website. Libsdl.org. Архів оригіналу за 7 липня 2013. Процитовано 19 березня 2010.