Libtcod
Материал из RLGClub :: Клуб любителей рогаликов
| 21.01.2010 | |
|---|---|
| Автор | J.C.Wilk |
| Лицензия | Freeware |
| Платформа | |
| Язык | C, C++, C#, Python, Common Lisp |
Содержание |
Краткое описание
Продвинутая библиотека, упрощающая разработку рогаликов. Последнее время (2009 год) стала очень популярной ввиду простоты работы и хорошей функциональности.
Особенности
- Портативность. Поддержка Windows и Linux.
- Обработка ввода с клавиатуры и мыши. Поддерживаются режимы как для пошаговой игры, так и для реалтайм.
- 16-битная цветовая палитра консоли.
- Эффект сглаживания шрифтов
- Генератор псевдослучайных чисел, основанный на очень хорошем алгоритме - Вихре Мерсенна.
- Парсер конфигурационных файлов
- Поддержка изображений в формате bmp и png
- Генератор шума Перлина
- Генератор карт высот
- Инструментарий FOV
- Инструментарий поиска пути (A*)
- Генератор подземелья
- Архиватор файлов данных (zlib)
Изменения, планирующиеся на версию 1.5.x
- Упрощение библиотеки. Будут убраны некоторые функции. Оставят по одному алгоритму FOV и генератора шума
- Защита от ошибок. Отказ от позиции "а и хрен с ним, пусть вылетает". dev-билды будут напичканы assert-ами, а публичные релизы максимально защитят от вылетов
- Субпиксельная работа с графикой. Это вчетверо увеличит разрешение выводящихся на экран изображений. И сделает более плавную картинку FOV
- Инструментарий уплотнения. Поможет решить проблему наложения одного на другое. Например, висячих подсказок для зданий в игре на бегающего рядом @
- Очень гибкий генератор подземелья
- Отказ от алгоритма A* в пользу алгоритма Дейкстры
Примеры
Hello World
#include "libtcod.hpp"
int main() {
TCODConsole::initRoot(80,50,"test",false); //Создаем окно
while (! TCODConsole::isWindowClosed()) {
TCODConsole::root->clear(); //Чистим консоль
TCODConsole::root->printCenter(40,25,TCOD_BKGND_NONE,"Hello world!"); //Выводим строку "Hello World"
TCODConsole::flush(); //Обновляем консоль
TCODConsole::checkForKeypress(); //Проверяем нажатие клавиш.
}
}
Ссылки
Официальный сайт
Официальный форум
Блог разработки



