Некоторые части этой статьи (относящиеся к Allegro 4, который заменяется Allegro 5) нуждаются в обновлении . Март 2014 г. ) ( |
Логотип Аллегро | |
Автор (ы) оригинала | Шон Харгривз |
---|---|
Разработчики) | Разработчики Аллегро |
изначальный выпуск | начало 1990 г . |
Стабильный выпуск | 5.2.6 / 9 февраля 2020 г . |
Репозиторий | |
Написано в | C |
Операционная система | Windows , Linux , macOS и др. |
Тип | SDK для мультимедиа и игр |
Лицензия | Allegro 4: Beerware [1] Allegro 5: zlib |
Интернет сайт | liballeg |
Allegro - это программная библиотека для разработки видеоигр . [2] [3] [4] Функциональность библиотеки включает поддержку базовой 2D-графики, манипуляции с изображениями, вывода текста, аудиовыхода, MIDI- музыки, ввода и таймеров, а также дополнительных подпрограмм для операций с фиксированной и плавающей точкой. матричная арифметика, строки Unicode , доступ к файловой системе, манипулирование файлами, файлы данных и трехмерная графика. Библиотека написана на языке программирования C и предназначена для использования с C, C ++ или Objective-C , с привязками, доступными для Python., Lua , Scheme , D , Go и другие языки. [5] Allegro поставляется с обширной документацией и множеством примеров.
Allegro поддерживает Windows , macOS , Unix-подобные системы , Android и iOS , абстрагируя свои программные интерфейсы приложений (API) в один переносимый интерфейс. Предыдущие версии до 4.4 поддерживали Windows, macOS, DOS , BeOS и различные Unix-подобные системы с (или без) X Window System . Также существует независимый порт Allegro на AmigaOS 4 и MorphOS .
Allegro, выпущенная в соответствии с условиями лицензии zlib , является бесплатным программным обеспечением с открытым исходным кодом .
История [ править ]
Первоначально обозначавшая низкоуровневые игровые процедуры Atari , [6] Allegro изначально была создана Шоном Харгривсом
для Atari ST в начале 1990-х годов. Однако Харгривз отказался от версии для Atari, так как понял, что платформа умирает, и повторно реализовал свою работу для компиляторов Borland C ++ и DJGPP в 1995 году. Поддержка Borland C ++ была прекращена в версии 2.0, и DJGPP был единственным поддерживаемым компилятором. Поскольку DJGPP был компилятором DOS , все игры, в которых использовался Allegro, использовали DOS. Примерно в 1998 году Allegro разветвился на несколько версий. Порт на Windows, WinAllegro, а также в это время был создан Unix-порт Allegro, XwinAllegro. Эти различные порты были объединены в версиях Allegro 3.9 WIP, причем Allegro 4.0 была первой стабильной версией Allegro, поддерживающей несколько платформ.Аллегро 5 [ править ]
Текущая разработка сосредоточена на ветке Allegro 5, полной переработке как API, так и большей части внутренней работы библиотеки. Были предприняты усилия, чтобы сделать API более согласованным и многопоточным. По умолчанию библиотека теперь имеет аппаратное ускорение с использованием бэкендов рендеринга OpenGL или DirectX, где это необходимо. Многие из надстроек, которые существовали как отдельные проекты для Allegro 4, теперь легко взаимодействуют с собственно Allegro и поставляются вместе с установкой по умолчанию. Allegro 5 управляется событиями .
Особенности [ править ]
Allegro предоставляет следующие графические функции:
- Векторный рисунок:
- пиксели, линии, прямоугольники, треугольники, круги, эллипсы, дуги, кривые Безье
- заливка формы, с узором или без него
- полигоны: плоские, по Гуро , текстурированные (3D) и полупрозрачные
- Спрайты :
- замаскированные, сжатые и скомпилированные спрайты
- блиттинг, вращение, растяжение, уменьшение, альфа-смешение, затенение по Гуро
- встроенная поддержка файлов BMP , LBM , PCX и TGA (другие поддерживаются с расширениями библиотеки)
- Цветовые палитры:
- изменение цветовой палитры (чтение, письмо, преобразование)
- преобразование цветовых форматов RGB <-> HSV
- Текст:
- поддержка различных кодировок и конвертации, по умолчанию UTF-8
- растровые шрифты (маскировка, раскраска, выравнивание)
- Разное:
- рисовать прямо на экране или на растровых изображениях памяти любого размера
- аппаратная прокрутка и тройная буферизация (при наличии), режим разделения экрана X
- функции анимации для формата FLIC [7]
Дополнения [ править ]
Сообщество пользователей Allegro предоставило несколько расширений библиотеки для обработки таких вещей, как прокрутка мозаичных карт, а также импорт и экспорт различных форматов файлов (например, PNG , GIF , изображения JPEG , видео MPEG , Ogg , MP3 , IT , S3M , музыка XM , шрифты TTF. , и больше).
Allegro 4.x и ниже можно использовать вместе с OpenGL с помощью библиотеки AllegroGL, которая расширяет функциональность Allegro на OpenGL и, следовательно, на оборудование. Allegro 5 изначально поддерживает OpenGL .
См. Также [ править ]
- Графический интерфейс Borland (BGI)
- ClanLib
- DirectX
- Список игровых движков
- Microsoft XNA
- OpenAL
- OpenGL
- OpenML
- Райлиб
- SciTech SNAP
- SDL
- SFML
- UniVBE
Ссылки [ править ]
- ^ Команда разработчиков Allegro. «Лицензия на сувенирную продукцию» . Проверено 16 ноября 2013 .
- ^ Харбор, Джонатан (2004). Программирование игр все в одном, второе издание . Курс Технологии PTR. ISBN 1-59200-383-4.
- ^ Steinke, Леннарт (2003). Spielprogrammierung . BHV Verlag. ISBN 3-8266-8075-8.
- ^ Дейтель, PJ (2006). C Как программировать . Как программировать. Прентис Холл . ISBN 0-13-240416-8.
- ^ Список привязок языка Allegro
- ^ Сообщение на форуме Шоном Харгривзом
- ^ Введение в аллегро
Внешние ссылки [ править ]
- Официальный веб-сайт
- Аллегро вики
- Игры с использованием Allegro
- Домашняя страница Шона Харгривза