Обновление версии с 1.0.x на 1.1.x
В версии 1.1.0 следующие ломающие изменения:
- Переименован метод запросов из
QueryComponentsвQuery - Удалены Компоненты-маски
IMask, так как они больше не имеют смысла и требуется при поднятии версии заменить их все на Компоненты-тегиITag - Удалены Стандартные компоненты
IStandardComponent, теперь они не имеют смысла и требуется при поднятии версии заменить их все на обычные КомпонентыIComponent- Если требуется поведение стандартных компонентов (Чтобы компонент присутствовал на всех без исключения сущностях) можно использовать
OnEntityCreateраздел сущности
- Если требуется поведение стандартных компонентов (Чтобы компонент присутствовал на всех без исключения сущностях) можно использовать
- Тип
RoEntityудален, многопоточные запросы теперь возвращаютEntity, а неRoEntity - Тип
WithAddsудален, необходимо использовать стандартныйWith - Метод
TryDeleteTagудален, теперь операцииSetTagиDeleteTagбезопасные и возвращаютbool, подробнее в разделе тегов - Entity теперь не реализует интерфейс
IEntity, если нужен интерфейс используйтеentity.Box(), подробнее в раздел сущности Queryпри передаче пользовательского значения параметром безrefвсе равно ожидает модификаторrefвнутри функции (W.Query.For(Time.deltaTime, (ref float dt, ent) => …))- Удалены
WithLink,WithLinksAll,WithLinksAnyметоды запросов к отношениям
Обновление версии с 1.1.x на 1.2.x
В версии 1.2.0 следующие ломающие изменения:
- Переименован метод запросов из
QueryEntities.For()->Query.Entities() - Переименован методы сущности для работы с сырыми типами:
entity.HasAllOf(Type componentType)->entity.RawHasAllOf(Type componentType)entity.Add(Type componentType)->entity.RawAdd(Type componentType)entity.TryAdd(Type componentType)->entity.RawTryAdd(Type componentType)entity.TryAdd(Type componentType, out bool added)->entity.RawTryAdd(Type componentType, out bool added)entity.GetRaw(Type componentType)->entity.RawGet(Type componentType)entity.PutRaw(IComponent component)->entity.RawPut(IComponent component)entity.TryDelete(Type componentType)->entity.RawTryDelete(Type componentType)entity.Delete(Type componentType)->entity.RawDelete(Type componentType)entity.CopyComponentsTo(Type componentType, Entity target)->entity.RawCopyComponentsTo(Type componentType, Entity target)entity.MoveComponentsTo(Type componentType, Entity target)->entity.RawMoveComponentsTo(Type componentType, Entity target)entity.HasAllOfTags(Type tagType)->entity.RawHasAllOfTags(Type tagType)entity.SetTag(Type tagType)->entity.RawSetTag(Type tagType)entity.DeleteTag(Type tagType)->entity.RawDeleteTag(Type tagType)entity.MoveTagsTo(Type tagType, Entity target)->entity.RawMoveTagsTo(Type tagType, Entity target)
- Переименован методы интерфейса
IQueryFunction:Run(...)->Invoke(...)
EntityGID:- Изменился размер 4 байт -> 8 байт
- Метод
Id()заменен на полеId - Метод
Version()заменен на полеVersion - Метод
Raw()заменен на полеRaw - Метод
IsRegistered()заменен на методIsActual() - Версия сущности: изменился тип
byte->ushort
- Удален тип
GIDStore - Удален метод
World.Clear() - Удалена настройка конфигурации мира
WorldConfig.baseEntitiesCapacity-> данный параметр принимает методWorld.Initialize(baseEntitiesCapacity) Entity:default(W.Entity)никогда не может быть актуальной сущностью- Метод
entity.IsActual()переименован вentity.IsNotDestroyed()