raylib — это простая и удобная в использовании библиотека для программирования видеоигр.
raylib во многом вдохновлен графической библиотекой Borland BGI и платформой XNA и особенно хорошо подходит для прототипирования, инструментов, графических приложений, встроенных систем и образования.
ПРИМЕЧАНИЕ для ПРИКЛЮЧЕНЦЕВ: raylib — это библиотека программирования, позволяющая программировать видеоигры; никакого причудливого интерфейса, никаких визуальных помощников, никакой кнопки отладки... просто кодирование самым спартанским программистским способом.
Готовы учиться? Переходите к примерам кода!
Это базовый пример raylib, он создает окно и рисует текст "Congrats! You created your first window!"
в середине экрана. Посмотрите этот пример, работающий в Интернете, здесь.
#include "raylib.h"
int main ( void )
{
InitWindow ( 800 , 450 , "raylib [core] example - basic window" );
while (! WindowShouldClose ())
{
BeginDrawing ();
ClearBackground ( RAYWHITE );
DrawText ( "Congrats! You created your first window!" , 190 , 200 , 20 , LIGHTGRAY );
EndDrawing ();
}
CloseWindow ();
return 0 ;
}
Бинарные выпуски raylib для Windows, Linux, macOS, Android и HTML5 доступны на странице выпусков Github.
raylib также доступен через несколько менеджеров пакетов в нескольких дистрибутивах ОС.
Wiki raylib содержит подробные инструкции по сборке и использованию на нескольких платформах.
Обратите внимание, что Wiki открыта для редактирования. Если вы обнаружите какие-либо проблемы при создании raylib для вашей целевой платформы, не стесняйтесь редактировать Wiki или открыть связанную с ней проблему.
raylib был разработан на платформе Windows с использованием компилятора Notepad++ и MinGW GCC, но его можно использовать с другими IDE на нескольких платформах.
Каталог Projects содержит несколько готовых к использованию шаблонов проектов для создания raylib и примеров кода с несколькими IDE.
Обратите внимание, что поддерживается множество IDE, некоторые из предоставленных шаблонов могут потребовать некоторой проверки, поэтому, если вы обнаружите какую-либо проблему с шаблоном или считаете, что его можно улучшить, не стесняйтесь присылать PR или открывать соответствующую проблему.
raylib предназначен для изучения с использованием примеров в качестве основного справочника. Стандартной документации по API нет, но есть шпаргалка, содержащая все функции, доступные в библиотеке, краткое описание каждой из них, входные параметры и имена результирующих значений должны быть достаточно интуитивно понятными, чтобы понять, как работает каждая функция.
Некоторую дополнительную документацию по проектированию raylib можно найти в raylib GitHub Wiki. Вот соответствующие ссылки:
raylib присутствует в нескольких сетях, и сообщество raylib растет с каждым днем. Если вы используете raylib и вам это нравится, присоединяйтесь к нам в любой из этих сетей. Самая активная сеть — наш сервер Discord! :)
raylib лицензируется по неизмененной лицензии zlib/libpng, которая представляет собой сертифицированную OSI лицензию типа BSD, которая позволяет статическое связывание с программным обеспечением с закрытым исходным кодом. Проверьте ЛИЦЕНЗИЮ для получения более подробной информации.
raylib использует внутри себя некоторые библиотеки для управления окнами/графикой/вводами, а также для поддержки загрузки различных форматов файлов. Все эти библиотеки встроены и доступны в каталоге src/external. Подробности см. в ЛИЦЕНЗИЯХ о зависимостях raylib на Wiki raylib.