DragonECS-Unity/README-RU.md
2024-03-11 05:43:31 +08:00

4.9 KiB
Raw Blame History

Version GitHub Discord

Интеграция с Unity для DragonECS

Languages: Русский English(WIP)

Расширение добавит набор инструментов для дебага и связи с движком Unity.

Warning

Проект в стадии разработки. API может меняться.
Readme еще не завершен

Оглавление


Установка

Семантика версионирования - Открыть

Окружение

Обязательные требования:

  • Зависимость: DragonECS
  • Минимальная версия C# 7.3;
  • Минимальная версия Unity 2021.2.0;

Протестированно:

  • Unity: Минимальная версия 2021.2.0;

Установка для Unity

  • Unity-модуль

Поддерживается установка в виде Unity-модуля в при помощи добавления git-URL в PackageManager или ручного добавления в Packages/manifest.json:

https://github.com/DCFApixels/DragonECS-Unity.git
  • В виде иходников

Фреймворк так же может быть добавлен в проект в виде исходников.


Debug

Debug Модуль

Подключение модуля отладки в Unity.

EcsDefaultWorld _world = new EcsDefaultWorld();
EcsEventWorld _eventWorld = new EcsDefaultWorld();

_pipeline = EcsPipeline.New()
    //...
    // Подключение и инициализация отладки для миров _world и _eventWorld
    .AddUnityDebug(_world, _eventWorld)
    //...
    .BuildAndInit();

Debug Сервис

UnityDebugService- реализация Debug-сервиса для EcsDebug. В редакторе по умолчанию автоматически инициализируется и связывает EcsDebug.Print с консолью юнити, EcsProfilerMarker c профайлером и т.д.

//Ручная активация.
UnityDebugService.Activate();

//Выведет сообщение в консоле Unity.
EcsDebug.Print(); 

var someMarker = new EcsProfilerMarker("SomeMarker");
someMarker.Begin();
//время выполнения этого участка будет отражено в профайлере юнити.
someMarker.End();

//Остановка игрового режима.
EcsDebug.Break();

Визуальная отладка

image image image image image

Шаблоны

ScriptableEntityTemplate

image image

MonoEntityTemplate

image image

Связь с GameObject