mirror of
https://github.com/DCFApixels/DragonECS.git
synced 2025-09-18 09:54:35 +08:00
Update README-RU.md
This commit is contained in:
parent
e828864ca8
commit
236b5c468a
101
README-RU.md
101
README-RU.md
@ -37,10 +37,12 @@
|
|||||||
* [Группа](#Группа)
|
* [Группа](#Группа)
|
||||||
* [Субъект](#Субъект)
|
* [Субъект](#Субъект)
|
||||||
* [Запрос](#Запрос)
|
* [Запрос](#Запрос)
|
||||||
* [Модули](#Модули)
|
* [Корень ECS](#Корень-ECS)
|
||||||
|
* [Пример для Unity](#Пример-для-Unity)
|
||||||
|
* [Общий пример](#Общий-пример)
|
||||||
* [Debug](#Debug)
|
* [Debug](#Debug)
|
||||||
* [Debug-Атрибуты](#Debug-Атрибуты)
|
* [Debug-Атрибуты](#Debug-Атрибуты)
|
||||||
* [Debug-Сервис](#Debug-Сервис)
|
* [EcsDebug](#EcsDebug)
|
||||||
* [Расширения](#Расширения)
|
* [Расширения](#Расширения)
|
||||||
|
|
||||||
# Установка
|
# Установка
|
||||||
@ -370,6 +372,101 @@ groupA.Inverse();
|
|||||||
EcsGroup newGroup = EcsGroup.Inverse(groupA);
|
EcsGroup newGroup = EcsGroup.Inverse(groupA);
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Корень ECS
|
||||||
|
Это пользовательский класс который явялестя точкой входа для ECS. Основное назначение инициализация, запуск систем на каждый Update движка и очистка по окончанию сипользования.
|
||||||
|
### Пример для Unity
|
||||||
|
``` csharp
|
||||||
|
using DCFApixels.DragonECS;
|
||||||
|
using UnityEngine;
|
||||||
|
public class EcsRoot : MonoBehaviour
|
||||||
|
{
|
||||||
|
private EcsPipeline _pipeline;
|
||||||
|
private EcsDefaultWorld _world;
|
||||||
|
private void Start()
|
||||||
|
{
|
||||||
|
//Создание мира для сущностей икомпонентов
|
||||||
|
_world = new EcsDefaultWorld();
|
||||||
|
//Создание пайплайна длясистем
|
||||||
|
_pipeline = EcsPipeline.New()
|
||||||
|
// Добавление систем.
|
||||||
|
// .Add(new SomeSystem1())
|
||||||
|
// .Add(new SomeSystem2())
|
||||||
|
// .Add(new SomeSystem3())
|
||||||
|
|
||||||
|
// Внедрение мира в системы.
|
||||||
|
.Inject(_world)
|
||||||
|
// Прочие внедрения.
|
||||||
|
// .Inject(SomeData)
|
||||||
|
|
||||||
|
// Завершение построения пайплайна.
|
||||||
|
.Build();
|
||||||
|
//Иницивлизация пайплайна и запуск IEcsPreInitProcess.PreInit
|
||||||
|
//и IEcsInitProcess.Init у всех добавленных систем
|
||||||
|
_pipeline.Init();
|
||||||
|
}
|
||||||
|
private void Update()
|
||||||
|
{
|
||||||
|
//Запуск IEcsRunProcess.Run у всех добавленных систем
|
||||||
|
_pipeline.Run();
|
||||||
|
}
|
||||||
|
private void OnDestroy()
|
||||||
|
{
|
||||||
|
//Запускает IEcsDestroyInitProcess.Destroy у всех добавленных систем
|
||||||
|
_pipeline.Destroy();
|
||||||
|
//Обязательно удалять миры которые больше не будут использованы
|
||||||
|
_world.Destroy();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
### Общий пример
|
||||||
|
``` csharp
|
||||||
|
using DCFApixels.DragonECS;
|
||||||
|
public class EcsRoot
|
||||||
|
{
|
||||||
|
private EcsPipeline _pipeline;
|
||||||
|
private EcsDefaultWorld _world;
|
||||||
|
// Инициализация окружения.
|
||||||
|
public void Init()
|
||||||
|
{
|
||||||
|
//Создание мира для сущностей икомпонентов.
|
||||||
|
_world = new EcsDefaultWorld();
|
||||||
|
//Создание пайплайна для систем.
|
||||||
|
_pipeline = EcsPipeline.New()
|
||||||
|
// Добавление систем.
|
||||||
|
// .Add(new SomeSystem1())
|
||||||
|
// .Add(new SomeSystem2())
|
||||||
|
// .Add(new SomeSystem3())
|
||||||
|
|
||||||
|
// Внедрение мира в системы.
|
||||||
|
.Inject(_world)
|
||||||
|
// Прочие внедрения.
|
||||||
|
// .Inject(SomeData)
|
||||||
|
|
||||||
|
// Завершение построения пайплайна.
|
||||||
|
.Build();
|
||||||
|
// Иницивлизация пайплайна и запуск IEcsPreInitProcess.PreInit
|
||||||
|
// и IEcsInitProcess.Init у всех добавленных систем.
|
||||||
|
_pipeline.Init();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update-цикл движка.
|
||||||
|
public void Update()
|
||||||
|
{
|
||||||
|
// Запуск IEcsRunProcess.Run у всех добавленных систем.
|
||||||
|
_pipeline.Run();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Очистка окружения.
|
||||||
|
public void Destroy()
|
||||||
|
{
|
||||||
|
// Запускает IEcsDestroyInitProcess.Destroy у всех добавленных систем.
|
||||||
|
_pipeline.Destroy();
|
||||||
|
// Обязательно удалять миры которые больше не будут использованы.
|
||||||
|
_world.Destroy();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
# Debug
|
# Debug
|
||||||
Фреймворк предоставляет дополнительные инструменты для отладки и логирования, не зависящие от среды.
|
Фреймворк предоставляет дополнительные инструменты для отладки и логирования, не зависящие от среды.
|
||||||
## Debug-Атрибуты
|
## Debug-Атрибуты
|
||||||
|
Loading…
Reference in New Issue
Block a user