Repolode
karl-zylinski

karl-zylinski/karl2d

Удобная для начинающих библиотека для 2D-игр на Odin с поддержкой Windows, Linux, macOS и веба.

Звёзды
724
Форки
66
Открытые issues
37
Последний коммит
позавчера

Что это?

Karl2D — библиотека для создания 2D-игр на языке Odin. Она берет на себя работу с окнами, отрисовку, ввод, аудио и загрузку ресурсов, позволяя разработчикам создавать простые игры без сборки большого стека зависимостей. Библиотека обращается напрямую к API операционной системы и графического рендеринга, а не использует промежуточный слой вроде GLFW.

На одной кодовой базе можно собирать исполняемые файлы для настольных систем и версии для веба. Веб-сборки используют бэкенд WebGL и официальный JS runtime Odin, поэтому инструментальная цепочка Emscripten не нужна. В комплект входит инструмент build_web, который упаковывает игру для браузера; ресурсы для веб-версии можно встраивать во время компиляции с помощью #load.

Проект находится в бета-версии. Обзор API генерируется в файл karl2d.doc.odin, а в репозитории есть примеры: редактор тайловых карт, позиционное аудио и небольшая игра с видом сверху.

Ключевые возможности

  • 01Загрузка и отрисовка текстур и геометрических фигур
  • 02Поддержка камеры: перемещение, поворот и масштабирование вида
  • 03Воспроизведение звуковых клипов и музыки, включая программный микшер
  • 04Ввод с мыши, клавиатуры, геймпада и сенсорного экрана (сенсорный ввод в вебе)
  • 05Сборки для Windows, Linux и macOS, а также веб-сборки без Emscripten

Сценарии использования

  • Изучение разработки игр на небольшом и понятном коде
  • Создание простых 2D-игр для настольных систем и браузера
  • Прототипирование 2D-геймплея на Odin без тяжеловесного движка
  • Изменение внутреннего устройства библиотеки под собственный стек игрового движка

Быстрый старт

  1. 1

    Установите компилятор Odin с сайта odin-lang.org

  2. 2

    Поместите репозиторий karl2d в подпапку с именем karl2d внутри папки игры

  3. 3

    Создайте game.odin, используя код Hello World из README

  4. 4

    Запустите игру из папки игры

    odin run .

Что важно знать

  • В README библиотека описана как бета-версия, поэтому возможны ошибки и изменения API.
  • Горячая перезагрузка — экспериментальная функция, которая находится в отдельном репозитории.
  • В Linux для веб-сборки может потребоваться установить пакет lld, чтобы получить wasm-ld.

В подборках

Темы

#gamedev#2d-games#game-library#odin#webgl#beginner-friendly#odin-lang#odin-programming-language

Частые вопросы

Что такое karl2d?
Удобная для начинающих библиотека для 2D-игр на Odin с поддержкой Windows, Linux, macOS и веба. Karl2D — библиотека для создания 2D-игр на языке Odin. Она берет на себя работу с окнами, отрисовку, ввод, аудио и загрузку ресурсов, позволяя разработчикам создавать простые игры без сборки большого стека зависимостей. Библиотека обращается напрямую к API операционной системы и графического рендеринга, а не использует промежуточный слой вроде GLFW.
karl2d можно использовать бесплатно? Какая у него лицензия?
karl2d распространяется с открытым исходным кодом под лицензией Zlib. Перед использованием в коммерческих продуктах проверьте условия лицензии.
karl2d всё ещё поддерживается?
Активно поддерживается. Последний коммит в karl2d — 5 нояб. 2026 г..
Для чего можно использовать karl2d?
Изучение разработки игр на небольшом и понятном коде Создание простых 2D-игр для настольных систем и браузера Прототипирование 2D-геймплея на Odin без тяжеловесного движка Изменение внутреннего устройства библиотеки под собственный стек игрового движка
Как установить karl2d?
Установите компилятор Odin с сайта odin-lang.org Поместите репозиторий karl2d в подпапку с именем karl2d внутри папки игры Создайте game.odin, используя код Hello World из README Запустите игру из папки игры: odin run .
Где скачать karl2d?
Исходный код и инструкции по установке — на GitHub: https://github.com/karl-zylinski/karl2d

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Odin — универсальный язык системного программирования с ориентацией на данные, встроенной стандартной библиотекой и позиционированием как альтернатива C.

12,3 тыс.+13 за неделю1,2 тыс.OdinZlibОбновлён вчера