Libgdx - это Java фреймворк, предоставляющий кросс-платформенный API для разработки игр и приложений реального времени. Он также предлагает следующие возможности:
Основные
- Кросс-платформенная разработка для Android, iOS, Windows, Linux и HTML5 (32 бита и где возможно 64 бита).
- Множество back-end основанные на Jogl, LWJGL, Angle (NVIDIA 3D Vision), Android APIs, iOS APIs и WebGL/HTML5 API.
- Написание кода и тестирование на вашем компьютере и плавное разворачивание на Android, iOS, чистом JavaScript, Applets, Webstart или как обычное приложение для персонального компьютера.
Графика
- Визуализация посредством OpenGL ES 1.0, 1.1 и 2.0 на всех платформах.
- Поддержка OpenGL 2.0 на Android 2.0 и выше через JNI.
- Низкоуровневые возможности:
- Массивы вершин (vertex arrays)
- Объекты буферизации вершин
- Текстуры
- Текстурные атласы
- Гибкий и легкий в использовании класс Mesh для фиксированного и программируемого pipeline
- Объекты буферизации кадров
- Шейдеры
- Класс прямого режима визуализации (для отладки, glBegin()/glEnd())
- Автоматическое отслеживание потери OpenGL контекста (текстур и воссоздание VBO)
- Высокоуровневое 2D
- Рендеринг спрайтов с пакетированием (Batch) и кэшированием
- Битовые шрифты
- Системы частиц
- Визуализация TMX тайловых карт
- Графическая библиотека C 2D для битовых манипуляций на уровне процессора
- Полноценный граф 2D сцены с tween анимацией
- Высокоуровневое 3D
- Загрузчики OBJ и MD5 моделей
- По-кадровая и скелетная анимация
- Ортогональная и перспективная камера
Аудио
- Воспроизведение музыки и звуковых эффектов из WAV, MP3 и OGG файлов
- Быстрое преобразование Фурье посредством JNI моста KissFFT
- Аудио декодирование OGG и MP3 через JNI мост Tremor и libmpg123 (libmpg123 не функционирует из-за проблем с лицензирование)
- Прямой интерфейс аудио устройства для проигрывания и записи семплов
Файлы
- Абстрактный слой единых Android asserts, classpath ресурсов и файловой системы
- Настройки (preferences) для удобного хранения небольших данных
Ввод
- Доступ к прикосновениям сенсорного экрана, мыши и клавиатуры основанных на обработке событий и очереди
- Доступ через очередь к компасу и акселерометру
- Поддержка вибратора
- Обработка событий удаленного ввода позволяет подключить Android телефон к приложению на компьютере.
Математика и Физика
- Классы векторов и матриц для линейной алгебры в 2D и 3D
- Кватернионы
- Отсечения по пирамиде видимости (Frustum Culling)
- Фигуры границ (Bounding Shapes)
- Проверки перекрывания и пересечения
- Catmull-Rom сплайны
- Разрез произвольного плоского полигона
- Полноценная JNI обертка box2d
Утилиты
- Коллекции
- Сортировка
- JSON
Инструменты и Расширения
- Редактор частиц
- Hiero генератор битовых шрифтов
- Упаковщик текстур
- Поддержка Themable Widget Library
- Awesomium JNI мост (только Windows 32 бит)
Оптимизация
- Специальные необходимые требования для Dalvki VM в соответствии с практическим руководством
- Нет выделения временных объектов в Runtime (исключения для нескольких документированных мест)
- Нативный код для повышения быстродействия на критических участках
- Временные решения для отображения Dalvik/Harmony багов
Что такое libgdx
Высокопроизводительный, кросс-платформенный фреймворк для разработки игр используемый как основа движков и игр. Объявление libgdx как фреймворка позволяет вам сфокусироваться на прочной основе, нежели попытки воплотить последнюю и лучшую в играх архитектуру движка. Libgdx дает вам гибкость и помогает в разработке, вместо головной боли от строгой методологии.
Комментариев нет:
Отправить комментарий