ru:toolworks:docs:apparatus:ecs

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
Последняя версияСледующая версия справа и слева
ru:toolworks:docs:apparatus:ecs [2021/04/16 15:55] – Ненмого осталось jisparru:toolworks:docs:apparatus:ecs [2021/04/21 02:03] – Закончил jispar
Строка 34: Строка 34:
 Apparatus берёт более широкое направление, чем обычный ECS, поэтому мы и называем его ECS+. Вводится бóльшая гибкость, имеется поддержка наследования деталей (компонентов), динамические belt-ы (//chunks// и //archetypes//), subject-booting и др. Само понятие ECS+ должно рассматриваться как синоним слову "Apparatus", так как плагин, на самом деле, реализует и полноценно использует именно эту терминологию с самого своего начала. Apparatus берёт более широкое направление, чем обычный ECS, поэтому мы и называем его ECS+. Вводится бóльшая гибкость, имеется поддержка наследования деталей (компонентов), динамические belt-ы (//chunks// и //archetypes//), subject-booting и др. Само понятие ECS+ должно рассматриваться как синоним слову "Apparatus", так как плагин, на самом деле, реализует и полноценно использует именно эту терминологию с самого своего начала.
  
-Вообще говоря, в нашей философии разработки, проектирование никогда не должно быть "простым" или "математически корректным", но напротив более применимым и удобным в использовании как для конечного пользователя, так и для программиста. Unreal Engine, конечно, является хорошим примером такого подхода со всеми своими кончепциями и паттернами. Соединяя в себе оба паттерна ООП и ECS, Apparatus включает всё самое лучшее из 3-х миров, считая мир UE-блупринтов.+Вообще говоря, в нашей философии разработки, проектирование никогда не должно быть "простым" или "математически корректным", но напротив более применимым и удобным в использовании как для конечного пользователя, так и для программиста. Unreal Engine, конечно, является хорошим примером такого подхода со всеми своими концепциями и паттернами. Соединяя в себе оба паттерна ООП и ECS, Apparatus включает всё самое лучшее из 3-х миров, считая мир UE-блупринтов.
  
 ==== Встроенные сущности ==== ==== Встроенные сущности ====
  
-На низком уровне, ''Subjective'' - это интерфейс, и любой класс, который его имплементирует, может быть назван сущностью. Есть несколько +На низком уровне, ''Subjective'' - это интерфейс, и любой класс, который его имплементирует, может быть назван сущностью. Есть несколько уже встроенных в плагин subject'ов:
  
-At a lower level, ''Subjective'' is an interface and any class that implements it may be called a ''Subject''There are several subjects already implemented in the framework:+  * ''SubjectiveActorComponent'' (на базе ''ActorComponent''),  
 +  * ''SubjectiveUserWidget'' (на базе ''UserWidget''), 
 +  * ''SubjectiveActor'' (на базе ''Actor'').
  
-  * ''SubjectiveActorComponent'' (based on ''ActorComponent'') +Этого должно хватить в подавляющем большинстве случаев использованияно выестественно, можете реализовать свои subject-классы в C++.
-  * ''SubjectiveUserWidget'' (based on ''UserWidget''), +
-  * ''SubjectiveActor'' (based on ''Actor'').+
  
-Those should be sufficient for the most cases, but you can easily implement your own additional subject classes in C++.+==== Встроенные механизмы ====
  
-==== Built-in Mechanisms ====+Класс ''Mechanical'' это также интерфейс, с уже реализованными основными механизмами: 
  
-The ''Mechanical'' class is also an interface, with the most useful mechanisms already implemented:  +  * ''MechanicalActor'' (наследованный от ''Actor''),
- +
-  * ''MechanicalActor'' (inherited from ''Actor''),+
   * ''MechanicalGameModeBase'' (''GameModeBase''),   * ''MechanicalGameModeBase'' (''GameModeBase''),
   * ''MechanicalGameMode'' (''GameMode'').   * ''MechanicalGameMode'' (''GameMode'').
  
-You would hardly ever need to implement your own mechanismsShould you wish toyou can also do it in C++.+Вряд ли вам потребуется дополнять функционал своими механизмамиЕсли такая потребность возникнетвы также можете достичь этого при помощи C++.
  • ru/toolworks/docs/apparatus/ecs.txt
  • Последнее изменение: 2021/12/18 15:19
  • jispar