From ad994c98c0ee48d36d235c9821c69e8314855d0c Mon Sep 17 00:00:00 2001 From: Mikhail <99481254+DCFApixels@users.noreply.github.com> Date: Sun, 16 Jun 2024 01:09:02 +0800 Subject: [PATCH 01/13] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index f099b3f..c5d4006 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,8 @@
# Integration with Unity for [DragonECS](https://github.com/DCFApixels/DragonECS) From 66a42b8db5a45b5ded7fb029d698e481585f80a8 Mon Sep 17 00:00:00 2001 From: Mikhail <99481254+DCFApixels@users.noreply.github.com> Date: Sun, 16 Jun 2024 01:21:34 +0800 Subject: [PATCH 02/13] Update README-RU.md --- README-RU.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README-RU.md b/README-RU.md index 6e52345..7163d52 100644 --- a/README-RU.md +++ b/README-RU.md @@ -5,8 +5,8 @@ # Интеграция с Unity для [DragonECS](https://github.com/DCFApixels/DragonECS) From 29f0b1c56e32e1a40e7d0f16085ce976510e3090 Mon Sep 17 00:00:00 2001 From: Mikhail <99481254+DCFApixels@users.noreply.github.com> Date: Sun, 16 Jun 2024 01:39:23 +0800 Subject: [PATCH 03/13] Update README-RU.md --- README-RU.md | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/README-RU.md b/README-RU.md index 7163d52..b23b525 100644 --- a/README-RU.md +++ b/README-RU.md @@ -30,6 +30,7 @@ - [Связь с GameObject](#связь-с-gameobject) - [World Provider](#world-provider) - [FixedUpdate LateUpdate ](#fixedupdate-lateupdate) +- [Документация проекта](#документация-проекта) - [FAQ](#faq) @@ -197,16 +198,16 @@ int e = _world.NewEntity(someSamplate); * Упрощенная реализация: ```c# -// Обязательно добавить [Serializable] к ттипу компонента +// Обязательно добавить [Serializable] к типу компонента. [Serializable] -struct SomeComponent : IEcsComponent { /*...*/ } +struct SomeComponent : IEcsComponent { /* ... */ } class SomeComponentTemplate : ComponentTemplate
+
+
+
+
@@ -125,7 +125,7 @@ EcsDebug.Break();
-----
* ### `EntityMonitor`
-Показывает состояние сущности мира. На кажду сущность в мире создается отдельынй монитор. Все мониторы сущностей помещаются в монитор мира.
+Показывает состояние сущности мира. На каждую сущность в мире создается отдельный монитор. Все мониторы сущностей помещаются в монитор мира.
@@ -153,7 +153,7 @@ int e = _world.NewEntity(someSamplate);
По умолчанию расширение содержит 2 вида шаблонов: `ScriptableEntityTemplate`, `MonoEntityTemplate`.
## ScriptableEntityTemplate
-Хранится как отдельынй ассет. Наследуется от `ScriptableObject`.
+Хранится как отдельный ассет. Наследуется от `ScriptableObject`.
Дейсвия чтобы создать `ScriptableEntityTemplate` ассет:
Повесить компонент: Add Component > DragonECS > AutoEntityCreator.
From 07ee133eb938e46ac1fc3a696e6cc87a8c63ff70 Mon Sep 17 00:00:00 2001
From: Mikhail <99481254+DCFApixels@users.noreply.github.com>
Date: Sun, 16 Jun 2024 12:09:34 +0800
Subject: [PATCH 06/13] Update README-RU.md
---
README-RU.md | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
diff --git a/README-RU.md b/README-RU.md
index be137a2..31007a1 100644
--- a/README-RU.md
+++ b/README-RU.md
@@ -31,6 +31,7 @@
- [World Provider](#world-provider)
- [FixedUpdate LateUpdate ](#fixedupdate-lateupdate)
- [Документация проекта](#документация-проекта)
+- [Окно настроек](#окно-настроек)
- [FAQ](#faq)
@@ -174,7 +175,7 @@ int e = _world.NewEntity(someSamplate);
-----
## MonoEntityTemplate
-Крепится к GameObject. Наследуется от `MonoBehaviour`.
+Крепится к `GameObject`. Наследуется от `MonoBehaviour`.
Повесить компонент: Add Component > DragonECS > MonoEntityTemplate.
@@ -194,6 +195,8 @@ int e = _world.NewEntity(someSamplate);
-----
## Шаблон компонента
+
+### Реализация
Чтобы компонент попал в меню `Add Component` нужно реализовать шаблон компонента. Шаблоны компонента это типы реализующие `IComponentTemplate`.
* Упрощенная реализация:
@@ -234,10 +237,13 @@ class SomeComponentTemplate : IComponentTemplate
```
@@ -422,7 +429,7 @@ public class EcsRoot : MonoBehaviour
# Окно настроек
-В окне настроек есть несколько опций, включая возможность менять режимы отображения компонентов в инспекторе. Внизу расположены удобные переключатели для используемых в фреймворке define директив процессора.
+В окне настроек есть несколько опций, включая возможность менять режимы отображения компонентов в инспекторе. Внизу расположены удобные переключатели для используемых в фреймворке define директив процессора. Открыть документацию: `Tools > DragonECS > Settings`.
From b03f664688825413934e261d0778c6009a51f9e4 Mon Sep 17 00:00:00 2001
From: Mikhail <99481254+DCFApixels@users.noreply.github.com>
Date: Sun, 16 Jun 2024 12:24:18 +0800
Subject: [PATCH 07/13] Update README-RU.md
---
README-RU.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README-RU.md b/README-RU.md
index 31007a1..703c1b8 100644
--- a/README-RU.md
+++ b/README-RU.md
@@ -429,7 +429,7 @@ public class EcsRoot : MonoBehaviour
# Окно настроек
-В окне настроек есть несколько опций, включая возможность менять режимы отображения компонентов в инспекторе. Внизу расположены удобные переключатели для используемых в фреймворке define директив процессора. Открыть документацию: `Tools > DragonECS > Settings`.
+В окне настроек есть несколько опций, включая возможность менять режимы отображения компонентов в инспекторе. Внизу расположены удобные переключатели для используемых в фреймворке define значения для директив процессора. Открыть документацию: `Tools > DragonECS > Settings`.
From 71b8d76a975692ede14c4e3a88365f03ce5e0e11 Mon Sep 17 00:00:00 2001
From: Mikhail <99481254+DCFApixels@users.noreply.github.com>
Date: Sun, 16 Jun 2024 15:26:45 +0800
Subject: [PATCH 08/13] fix readme
---
README-RU.md | 2 +-
README.md | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/README-RU.md b/README-RU.md
index 703c1b8..8c091ec 100644
--- a/README-RU.md
+++ b/README-RU.md
@@ -41,7 +41,7 @@
## Окружение
Обязательные требования:
+ Зависимость: [DragonECS](https://github.com/DCFApixels/DragonECS)
-+ Минимальная версия C# 7.3;
++ Минимальная версия C# 8.0;
+ Минимальная версия Unity 2021.2.0;
Протестировано:
diff --git a/README.md b/README.md
index c5d4006..49c9a12 100644
--- a/README.md
+++ b/README.md
@@ -28,7 +28,7 @@ Versioning semantics - [Open](https://gist.github.com/DCFApixels/e53281d4628b19f
## Environment
Requirements:
+ Dependency: [DragonECS](https://github.com/DCFApixels/DragonECS)
-+ Minimum version of C# 7.3;
++ Minimum version of C# 8.0;
+ Minimum version of Unity 2021.2.0;
Tested with:
From 198c470e7f68e9396da9cf42cb55709e96fff9fc Mon Sep 17 00:00:00 2001
From: Mikhail <99481254+DCFApixels@users.noreply.github.com>
Date: Tue, 13 Aug 2024 22:16:58 +0800
Subject: [PATCH 09/13] fix reconnect
---
src/Connectors/EcsEntityConnect.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/Connectors/EcsEntityConnect.cs b/src/Connectors/EcsEntityConnect.cs
index 50fa666..03822fe 100644
--- a/src/Connectors/EcsEntityConnect.cs
+++ b/src/Connectors/EcsEntityConnect.cs
@@ -145,8 +145,8 @@ namespace DCFApixels.DragonECS
{
var unityGameObjects = _world.GetPool
+
+
+
Расширение добавит набор инструментов для отладки и связи с движком Unity.
> [!WARNING]
> Проект в стадии разработки. API может меняться.
-> Readme еще не завершен
+> Readme еще не завершен, если есть не ясные моменты, вопросы можно задать тут [Обратная связь](https://github.com/DCFApixels/DragonECS/blob/main/README-RU.md#%D0%BE%D0%B1%D1%80%D0%B0%D1%82%D0%BD%D0%B0%D1%8F-%D1%81%D0%B2%D1%8F%D0%B7%D1%8C)
# Оглавление
- [Установка](#установка)
@@ -137,25 +158,25 @@ EcsDebug.Break();
# Шаблоны
-Шаблоны - это настраиваемые наборы компонентов которые можно применить к сущностям. Шаблоны должны реализовавыть интерфейс `ITemplateNode`.
+Шаблоны - это настраиваемые наборы компонентов которые можно применить к сущностям. Шаблоны должны реализовывать интерфейс `ITemplateNode`.
```c#
-ITemplateNode someSamplate = /*...*/;
+ITemplateNode someTemplate = /*...*/;
//...
foreach (var e in _world.Where(out Aspect a))
{
// Применение шаблона сущности.
- someSamplate.Apply(e, _world.id);
+ someTemplate.Apply(e, _world.id);
}
```
```c#
// Применение шаблона сразу при создании сущности.
-int e = _world.NewEntity(someSamplate);
+int e = _world.NewEntity(someTemplate);
```
По умолчанию расширение содержит 2 вида шаблонов: `ScriptableEntityTemplate`, `MonoEntityTemplate`.
## ScriptableEntityTemplate
Хранится как отдельный ассет. Наследуется от `ScriptableObject`.
-Дейсвия чтобы создать `ScriptableEntityTemplate` ассет:
+Действия чтобы создать `ScriptableEntityTemplate` ассет:
+
+
+ Readme Languages:
+
+
+
+
+
+
+
+ Русский
+
+
+
+
+
+ English(WIP)
+
+
Создать ассет: Asset > Create > DragonECS > ScriptableEntityTemplate.
@@ -252,9 +273,9 @@ class SomeComponentTemplate : IComponentTemplate
### Применение шаблонов компонентов вне стандартных шаблонов сущностей
-При необходимости создания кастомного шаблона, шаблоны компонентов поддерживают отображение вне стандартных `MonoEntityTemplate` и `ScriptableEntityTemplate`.
+При необходимости создания пользовательского шаблона, шаблоны компонентов поддерживают отображение вне стандартных `MonoEntityTemplate` и `ScriptableEntityTemplate`.
```c#
-// ComponentTemplateReference добавляет кнопку выбора доступной реализации IComponentTempalte
+// ComponentTemplateReference добавляет кнопку выбора доступной реализации IComponentTemplate
// и отображает шаблон компонента аналогично компонентам в MonoEntityTemplate или ScriptableEntityTemplate.
[SerializeReference, ComponentTemplateReference]
private IComponentTempalte _someComponent1;
@@ -439,4 +460,4 @@ public class EcsRoot : MonoBehaviour
# FAQ
## Не могу повесить EcsEntityConncet или другие компоненты
-Такое может происходить после обновления пакета, решается либо через `Assets -> Reimport All` или перезапуск окна Unity с удалением папки `*project name*/Library`.
+Такое иногда может происходить после обновления пакета, решается либо через `Assets -> Reimport All` или перезапуск окна Unity с удалением папки `*project name*/Library`.
diff --git a/README.md b/README.md
index 49c9a12..ed6d6ee 100644
--- a/README.md
+++ b/README.md
@@ -11,8 +11,29 @@
# Integration with Unity for [DragonECS](https://github.com/DCFApixels/DragonECS)
-| Languages: | [Русский](https://github.com/DCFApixels/DragonECS-Unity/blob/main/README-RU.md) | [English(WIP)](https://github.com/DCFApixels/DragonECS-Unity) |
-| :--- | :--- | :--- |
+
+
+
+
The extension will add a set of tools for debugging and communicating with the Unity engine.
From 855695ea7e4fe33953dbaeebb698295a7423fdaa Mon Sep 17 00:00:00 2001
From: Mikhail <99481254+DCFApixels@users.noreply.github.com>
Date: Mon, 9 Sep 2024 09:56:33 +0800
Subject: [PATCH 12/13] fix Cannot get managed reference index with out bounds
offset
---
.../Templates/ComponentTemplateBase.cs | 16 +++++++---------
1 file changed, 7 insertions(+), 9 deletions(-)
diff --git a/src/EntityTemplate/Templates/ComponentTemplateBase.cs b/src/EntityTemplate/Templates/ComponentTemplateBase.cs
index 39404d3..8d7ec95 100644
--- a/src/EntityTemplate/Templates/ComponentTemplateBase.cs
+++ b/src/EntityTemplate/Templates/ComponentTemplateBase.cs
@@ -2,6 +2,7 @@
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
+using System.Runtime.InteropServices;
using UnityEngine;
using static DCFApixels.DragonECS.IComponentTemplate;
@@ -50,11 +51,14 @@ namespace DCFApixels.DragonECS
#endregion
}
[Serializable]
+ [StructLayout(LayoutKind.Sequential)]
public abstract class ComponentTemplateBase
+
+
+ Readme Languages:
+
+
+
+
+
+
+
+ Русский
+
+
+
+
+
+ English(WIP)
+
+