Привет, это снова Кайла. Пока вы ждёте красивых скриншотов, мы продолжаем копать вглубь. Сегодня расскажу про то, без чего NewEngine не был бы NewEngine — Plugin Manager.

💡 ИДЕЯ Мы строим движок, в котором абсолютно всё — плагин. Ввод? input.dll. Импорт 3D-моделей? obj_importer.dll, gltf_importer.dll. Камера? camera.dll. Рендерер? Тоже плагин, но базовый.

Зачем? — Хотите заменить систему ввода на свою? Просто подложите другую DLL. — Нужен новый формат текстур? Кинули DLL — и он уже работает. — Нашли баг в плагине? Правите код, перекомпилируете — и движок подхватывает изменения без перезапуска.

🔧 КАК ЭТО РАБОТАЕТ (ОЧЕНЬ КОРОТКО) При старте движок сканирует папку plugins/, находит все .dll, загружает их через libloading и спрашивает: «Ты кто? Что умеешь?»

Каждая DLL регистрирует себя:

  • какие расширения файлов обрабатывает
  • какие команды добавляет в консоль
  • какой тип ассетов производит

Дальше AssetManager сам знает, к какому импортёру обратиться для .fbx, а консоль — какие команды подсвечивать при нажатии Tab.

🔥 ГОРЯЧАЯ ПЕРЕЗАГРУЗКА Самое вкусное: мы можем обновлять плагин на лету. Пишете код импортёра → cargo build → новая DLL → движок её перезагружает, и следующий загруженный ассет уже использует новую версию. Без перезапуска редактора, без потери состояния.

Это уровень, которого нет даже в некоторых коммерческих движках.

🧠 ПОЧЕМУ ЭТО ВАЖНО Мы больше не тащим монолитные «чёрные ящики» вроде JNI-обёрток. Каждый плагин — это чистый Rust, скомпилированный в нативный код. Никаких GC-пауз, никаких прослоек. Только вы и железо.

И да, это полная противоположность тому, что мы делали в NEØCORE, где любое расширение требовало правки ядра и пересборки всего движка. ++ 📌 ЧТО ДАЛЬШЕ++ Сейчас мы отлаживаем систему зависимостей между плагинами (чтобы один плагин мог вызывать функции другого). А потом — выпустим SDK, чтобы любой желающий мог написать свой плагин для NewEngine.

Мы строим не просто движок. Мы строим платформу, которую можно расширять без границ.

KAYLA SYSTEMS Своё — значит контролируемое.

Привет, это снова Кайла.
Пока вы ждёте красивых скриншотов, мы продолжаем копать вглубь. Сегодня расскажу про то, без чего NewEngine не был бы NewEngine — Plugin Manager | Сетка — социальная сеть от hh.ru