Большое обновление EdenSpark 1.0

Использующая ИИ платформа с открытым исходным кодом для создания игр для ПК и консолей

Площадка, которая создает возможности

Публикация в один клик - и игра остаётся вашей.

  • Submit из лаунчера, и игра в каталоге: лайки, комментарии, счётчики, инвайты по ссылке.
  • Права на игру остаются у автора. Мы не претендуем на неё и не запираем проект в платформе.
  • Не хотите каталог - без проблем. Export даёт самодостаточный standalone-билд: exe, ассеты, библиотеки.

Три геймджема, более 50 игр в каталоге

Движок не "скоро будет готов". На нём уже сделали почти полсотни игр.

  • 3 геймджема, более 50 игр в каталоге - можно играть прямо сейчас.
  • Пара недель на игру. Участники приходили без опыта в EdenSpark и без опыта в Daslang, но у них получилось создать высококлассные игры.

Редактор

Если вы работали в Unity, Unreal или Godot, значит вы уже умеете пользоваться редактором.

  • Привычная раскладка и привычные действия: иерархия сцены, инспектор компонентов, импортер ассетов, файловый браузер, консоль, редактор кода, гизмо, режим префаба.
  • Всё необходимое для традиционной разработки на месте: Play/Pause/Step, undo на всё, drag and drop между панелями, hotkeys.
  • Много информации для отладки, в том числе визуальной: статистика кадра, профайлер внутри редактора, отрисовка физики и навмеша, логи с понятными стектрейсами.

Daslang: быстрый строго типизированный язык с "горячей" перезагрузкой

Скорость компилируемого языка, синтаксис уровня Python, перезагрузка на лету.

  • Быстрее привычных скриптовых языков: статическая типизация и zero-cost interop с C++, никакого маршалинга данных на каждый вызов.
  • Синтаксис простой и читаемый, близок к Python - с него легко начать.
  • Большой проект собирается в AOT (компиляция в C++) - production-скорость без переписывания геймплея на C++.
  • Отладка на месте: дебаггер в VS Code, профайлер по функциям, профайлер памяти.
  • И при этом хот-релоад: Ctrl+Shift+R перезагружает скрипты, не теряя состояние игры.
  • У языка свой сайт, документация, плейграунд и  открытый исходный код - daslang.io 9 платформ, включая PS5 и Switch.

MCP "из коробки": агент работает с движком, а не угадывает

Claude Code, Codex, Cursor, Copilot, Gemini - подключаются и сразу работают.

  • MCP-сервер живёт внутри запущенной игры: агент читает сцену, жмёт кнопки, играет,

делает скриншоты - и всё это с undo.

  • Отдельный MCP для Daslang: агент пишет код по настоящему API и документации,

а не по тому, что он "помнит". Меньше галлюцинаций и выдуманных функций.

  • Работает офлайн, без ключей и аккаунта.

Генерация ассетов "из коробки"

Картинки и 3D-модели прямо в редакторе. Ничего докупать не надо.

  • Генерация картинок по тексту, редактирование готовых картинок, генерация 3D-моделей - всё уже есть в редакторе.
  • Eden Image Mini - модель генерации картинок, которая работает на вашем ПК: после установки ни интернета, ни очереди.
  • Texture inpaint - на сгенерированной 3D-модели закрашиваете область прямо на превью, пишете, что там должно быть, и перегенерируется только этот кусок.
  • Приоритетное направление: мы развиваем его дальше и по мере роста сообщества будем подключать более мощные модели.

От 2D и lowpoly до полноценного PBR HD

Один движок и для пиксельной аркады, и для "тяжёлой" картинки.

  • Два рендера: Standard - быстрый, мультикамерный, с ортографикой и 2D; HD - полноценный PBR с global illumination, объёмными облаками, реалистичной водой и TAA.
  • В обоих рендерах: меши, материалы, particle system, эмиссия, спрайты и поддержка формата Tiled для 2D, собственные шейдеры - шейдер-графом или кодом на Daslang.
  • Рендер строится на технологиях Dagor Engine, на котором работают флагманские проекты Gaijin: War Thunder, Enlisted, Cuisine Royale и другие.
Стандартный рендер
HD-рендер

Передовые рендер-технологии

То, чего обычно ждут от большого движка уже здесь!

  • Динамический GI с offscreen-эмиссией: свет пересчитывается на ходу, а эмиссивные поверхности светят как полноценные источники, даже когда не попадают в кадр.
  • Translucency: свет проходит сквозь тонкие поверхности - листву, ткань, шторы.
  • Векторные шрифты: текст остаётся чётким на любом размере и приближении.
  • Particle system, bloom, объёмные облака, реалистичная вода в HD.
Без offscreen-emission
С offscreen-emission
Без Translucency шейдинга
С Translucency шейдинга
Без свечения
Со свечением

Свои шейдеры

Файл .shader, свойства сами становятся слайдерами в инспекторе, хот-релоад.

  • Материалы, 2D и полноэкранные пост-эффекты - один и тот же язык. Десятки готовых: dissolve, hologram, cel, force field, night vision, CRT, Mandelbrot.
  • Пользовательские шейдеры работают, где рантайм-компиляция HLSL недоступна и требует отдельных проверок.
  • Не любишь код? Есть Shader Graph!
var {
    @color rimColor = float3(0.0, 0.5, 1.0)
    speed = 4.0
}

[pixel_shader]
def fresnel_pulse(inp : PbrInput) {
    let rim = fresnel(3.0, inp.worldNormal, inp.viewDir) * rimColor
    let pulse = remap(sin(g_Time * speed), float2(-1, 1), float2(0, 1))
    return PbrOutput(emission = rim, emissionStrength = length(rim) * pulse * 5.0,
                     metalness = 0.0, roughness = 0.0)
}

Ассетный пайплайн: быстрый и без шага конвертации

Положил файл в проект и он уже в игре. Поменял файл - игра обновилась.

  • Никакого отдельного экспорта в формат движка: кладёте исходник, сборка идёт сама в фоне.
  • Хот-релоад ассетов: подменили текстуру, модель или материал - видно сразу, без перезапуска.
  • Широкий набор форматов из коробки:
  • модели: FBX, glTF/GLB, OBJ, DAE;
  • текстуры: PNG, JPG, BMP, PSD, TGA, SVG;
  • звук: WAV, OGG, MP3, FLAC; шрифты: TTF, OTF; данные: JSON, XML, TXT, бинарный .data.
  • Ассеты оптимизируются под рантайм и память: оптимизатор вершинного кэша (до 30x в бенчмарке), упрощение мешей, сжатие текстур одной галочкой.
Без оптимизации — 90.6 MB on GPU
Те же текстуры, с оптимизацией — 15.9 MB on GPU

Префабы

Собрал один раз и используешь везде, правишь в одном месте.

  • Вложенность и наследование, инстанс перетаскиванием, начальный префаб сцены.

Физика

Под капотом Jolt. Десятки тысяч тел в симуляции.

  • RigidBody, составные Collider-ы, CharacterController, joints (spring, hinge, 6DOF), raycast и ray picking, CollisionListener.
  • Движок тянет десятки тысяч тел одновременно.
  • Есть физика машин: двигатель, трансмиссия, колёса.

NavMesh

Агенты сами находят дорогу, а навмеш можно перестраивать на ходу.

  • Компонент NavMesh: бейк по кнопке из коллайдеров сцены.
  • Строится настолько быстро, что это можно делать в рантайме - есть API для бейка из кода.

Процедурная генерация уровня и разрушаемое окружение работают.

  • Запрос пути одной строкой; NavCorridor - для преследования и живых перестроений.

Звук

3D-звук, реверб, эффекты - и музыка, которую пишут кодом.

  • Позиционный звук, реверберация; длинное стримится, короткое декодируется в память само.
  • Strudel: ритм и мелодия паттернами в несколько строк, SF2-саундфонты, бинауральный HRTF.

Анимация

Low-level API с полным контролем и хелперы, чтобы не писать его каждый раз.

  • Полный контроль над блендингом и масками на низком уровне: анимация под любую задачу, а не под то, что предусмотрел движок.
  • Для простых случаев есть хелперы проигрывания - одна строка, и анимация играет.
  • Встроенный инерционный блендинг: переходы получаются естественными без громоздких аним-графов и отдельных переходных клипов.

Мультиплеер и сеть

Написал однопользовательскую игру. Добавил [replicated]- играете вдвоём!

  • Поддержка мультиплеера и сети: серверная копия компонента появляется у всех клиентов - вместе с трансформом, родителем, мешем и коллизией.
  • Встроенные лобби и инвайты, хост живёт в процессе игрока - отдельный сервер разворачивать не надо.
  • Репликация и синхронизация физики - на движке: зеркала едут плавно и сталкиваются с миром. Предсказание управляемых игроком объектов и сглаживание коррекций пишутся в игровом коде под жанр, а не по одной навязанной модели.
[replicated]
class Health : Component {
    hp : float = 100.0

    def override on_update {
        if (hasRemoteAuthority) {  
            return
        }
        hp = min(hp + 5.0 * get_delta_time(), 100.0)
    }
}

Скачайте лаунчер - дальше на выбор:

  • Download/Play на любой выложенной игре - если хочется просто поиграть.
  • Create/Try - запустить любой из десятков семплов и посмотреть его, не создавая проект.
  • Create/Clone - сделать свою игру на основе семпла.

edenspark.io | games.edenspark.io | docs.edenspark.io | Discord | Telegram