Dgle-это мощный независимый кроссплатформенный двигатель для 2D/3D-игр и визуализации в реальном времени. Молодой, сильный и сумасшедший!
Цель проекта-предоставить разработчикам гибкие и расширяемые кроссплатформенные профессиональные технологии, способные создавать любые 2D/3D-игры, визуализации в реальном времени, научные приложения и т. Д. Это должно быть легко создавать отличные проекты, используя редакторы и сценарии или углубляться и использовать ваши навыки программирования на ваших любимых языках для создания действительно интересных проектов. Пользователи также могут добавлять новые форматы и функциональность, создавая новые плагины для двигателя и поделиться ими с другими в Интернете или просто получить плагины, уже сделанные другими. Когда проект будет завершен, его можно легко построить для каждой популярной платформы.
Эта аббревиатура является своего рода наследием, и это длинная история ... теперь официально это означает: динамитный громкий легкий двигатель , который является более правильным, в отношении духа проекта. Иногда двигатель называется Dglengine или Dgle Engine , оба варианта также являются правильными.
Посетите официальный веб -сайт для получения более подробной информации об этом проекте, а также плагинах, статьях, учебных пособиях, примерах и поддержке.
Простое приложение C ++ "Helloworld" для Windows. Этот код будет настраивать двигатель, создавать окно и рендеринг «Привет, мир!» Текст на экране через шрифт по умолчанию. Вы можете скопировать этот код своему «main.cpp» , и вы закончили! Также не забудьте скопировать заголовки двигателей (вы можете найти их в папке «include/cpp» и библиотеки «dgle.dll» (вы можете найти его в папке «bin/win» ) в подходящих местах, которые можно найти компилятором и исполняемым файлом.
# include " DGLE.h "
using namespace DGLE ;
DGLE_DYNAMIC_FUNC
IEngineCore *pEngineCore = NULL ;
IBitmapFont *pFont = NULL ;
void DGLE_API Init ( void *pParametr)
{
IResourceManager *resMan;
pEngineCore-> GetSubSystem (ESS_RESOURCE_MANAGER, (IEngineSubSystem *&)resMan);
resMan-> GetDefaultResource (EOT_BITMAP_FONT, (IEngBaseObj *&)pFont);
}
void DGLE_API Render ( void *pParametr)
{
pFont-> Draw2D ( 0 , 0 , " Hello World! " );
}
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
{
if ( GetEngine ( " DGLE.dll " , pEngineCore) )
{
pEngineCore-> InitializeEngine ( NULL , " My First App " );
pEngineCore-> AddProcedure (EPT_INIT, &Init);
pEngineCore-> AddProcedure (EPT_RENDER, &Render);
pEngineCore-> StartEngine ();
FreeEngine ();
}
else
MessageBoxA ( NULL , " Couldn't load " DGLE.dll " ! " , " My First App " , MB_OK | MB_ICONERROR | MB_SETFOREGROUND);
return 0 ;
}Вы можете найти больше примеров в папке «SRC/примеры» . Также для других поддерживаемых языков.
Вы можете найти инструкции по сборке здесь.
Кроме того, если вы хотите участвовать в процессе разработки проекта, вы должны прочитать и понимать правила разработки.
Вы можете найти документацию по API двигателя и статьи в вики.
Лицензирован по лицензии LGPL.
Скомпилированный и готовый к использованию новейшего кроссплатформенного SDK всегда можно найти здесь.
См. Чанглог для полного списка изменений.
Андрей Коротков, aka Dron
Алекси Шейдуров, он же Эш (3D графическое программирование)
Kuznecov Stanislav aka Stalkers (разработка плагинов и инструментов)
Mikhail Shestakov aka Mike (C# GUI и разработка инструментов, также погрузчики PNG и JPG)
Firstin Anton aka First (заголовки Delphi/c# и незначительное дополнительное программирование)
Semen Kotlyarov aka Kimer (разработка плагинов и инструментов)
Илья Сивков, он же грех (пакеты DCP и незначительное дополнительное программирование)
Swyatoslav Lobov aka fastioroma (разработка компонентов GUI)
VLAD FOMIN AKA PHOMM (заголовки и примеры Delphi/C#)
Artyks aka ksenya artemova для дизайна логотипа
Woolf для поддержки проекта
Мадрайн для пировых частиц
Джон Мофф, друг RIP
Все сотрудники Deeprosoft для поддержки проекта
Посетите http://dglengine.org для получения дополнительной информации.
Следуйте за нами в Twitter, Facebook или Vkontakte.
Не стесняйтесь отправить нам по почте [email protected] с любыми вопросами.