- 06.10.2026 5 коммитов
-
-
Nikitos создал
Честный bloom, шейдеры узлов, render target, DSP-эффекты и реверб-шины; закрыто 11 из 12 пунктов §28 v0.1.10
-
Nikitos создал
-
Nikitos создал
-
Nikitos создал
-
Nikitos создал
- src/profile.{h,c}: зоны кадра (логика, сборка батча, физика, загрузка VB/IB, draw, интерфейс, прочее), среднее и пик за 120 кадров. - engine.now() — монотонные миллисекунды для внутрикадровых замеров. - $.loading: экран загрузки с полосой прогресса и шагами по кадрам. - Курсор в скриптах: engine.setCursor/cursorVisible, $.input.cursor(name). - $.ui.setIcon(селектор, имя) — иконка отдельной меткой. - r2d_sprite_create: полтексельный отступ UV — соседний кадр атласа больше не затягивается на границе ячейки.
-
- 05.10.2026 2 коммита
-
-
Nikitos создал
* Тряска камеры, узлов и тайлов берёт случайные числа из отдельного seeded-генератора (fxRandom), а не из Math.random(): при --seed и --fixed-dt прогон снова воспроизводим — проверено сравнением двух независимых прогонов. Игровой поток $.random при этом не затрагивается. * $.scene.load(name, { ms: 0 }) переключает сцену мгновенно: ноль был falsy и тихо превращался в длительность по умолчанию (300 мс). * docs: у $.ui.doc().on() явно сказано, что подписка идёт на конкретный элемент — на этой ошибке стояли мёртвые кнопки в трёх демо. * scene_test: проверка мгновенной смены по ms: 0. -
Nikitos создал
Российский 2D-игровой движок: ядро на C11, игровая логика на JavaScript, единая точка входа — объект `$` в стиле jQuery. Стек: SDL3 (окно, ввод, SDL_GPU: Vulkan/Metal/DirectX 12), QuickJS-ng 0.10, Box2D v3.1, SDL3_mixer, RmlUi 6.3, Dear ImGui, свои 2D BSP-дерево и полигоны видимости, Material Design Icons, опционально libcurl для $.http. Что умеет: - высокоуровневое API `$`: создание узлов `$('<player>', {...})`, CSS-подобные селекторы, цепочки, события, твины; - подсистемы: анимация клипами и машина состояний ($.anim), TileMap со слоями, автотайлом, террейнами и Y-sort ($.tilemap), CPU-частицы ($.particles), навигация A* и navmesh ($.nav), prefab и сериализация сцен ($.prefab), аудио-шины и эффекты ($.audio), канвас-слои и параллакс ($.layers), UI-контролы с якорями и темами ($.ui), Tween в стиле Godot ($.tween), зоны enter/leave ($.triggers), локализация ($.i18n), пул объектов ($.pool), HTTP-запросы ($.http); - физика: формы тел (прямоугольник, круг, капсула, полигон), односторонние платформы, события контакта collide/separate/hit, суставы; - blend-режимы alpha/add/multiply/none на узле и на кадр; - сборка игры в один исполняемый файл с шифрованием груза (ChaCha20-Poly1305); - интеграция с ИИ-агентами: агентский режим (JSON по stdin/stdout), headless, детерминированный прогон --fixed-dt/--seed, eval/state/screenshot, виртуальный ввод с текстом, $.agent/$.test, Python-клиент и раннер тестов. Проверки: 24 агентских теста (tools/run_tests.py), 18 наборов юнит-тестов под qjs, отдельные C-тесты JSON и криптографии. CI: .gitlab-ci.yml собирает Linux (gcc и clang) и Windows (MSVC), упаковывает dist/ и выпускает релиз по тегу v*. Документация: docs/HIGH_LEVEL_API.md, docs/API.md, docs/AGENT_API.md, docs/BUILD.md, docs/RELEASING.md, docs/GAP_ANALYSIS.md, docs/tutorial-first-game.md и справочники подсистем в docs/highlevel/. Лицензия авторская: использовать, менять, распространять и продавать свободно; если выпустишь игру на движке — скажи спасибо автору, можно не вслух (LICENSE). Репозиторий: https://hub.mos.ru/dem4ev48/russiano2d
-