Mirror of Svelto.ECS because we're a fan of it
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CHANGELOG.md 4.1KB

2 years ago
4 years ago
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. # Changelog
  2. All notable changes to this project will be documented in this file. Changes are listed in random order of importance.
  3. ## [3.3.2] - 04-06-2022
  4. * Internal refactoring to support future features. Currently it may translate to a small performance boost
  5. * IEntityComponent and IEntityViewComponent now implements IBaseEntityComponent. This shouldn't affect existing code
  6. * Improve thread-safety of entity building
  7. * Fixed serious bug that affected the integrity of the EntityIDs values during RemoveEX callbacks
  8. * The point above may result in a performance boost in the Filters updates during submission
  9. * Code is again 2019 compatible (this may have been broken for a while)
  10. * Fix a crash wit the EntityCollection deconstruction while trying to deconstruct an empty collection
  11. ## [3.3.1] - 26-04-2022
  12. * Fixed serious bug that would affect the new IReactOnRemoveEx callbacks
  13. ## [3.3.0] - 11-04-2022
  14. * INeedEGID and INeedEntityReference interfaces are not deprecated, but still available for backwards compatibility through the define SLOW_SVELTO_SUBMISSION
  15. * There are some minor breaking changes, you may need to rename a bunch of methods calls
  16. * Drastically improved Submission phase performance
  17. * All the IReactOn interfaces are now replaced by much faster IReacOn\*Ex interfaces. Use those instead.
  18. * QueryEntities methods now optionally return also an array of Entity IDs that you can reference like a component (this supersedes INeedEGID)
  19. * Completely reworked and way more powerful filter API. The old one has been renamed to Legacy and left for backward compatibility
  20. * NativeEGIDMultiMapper doesn't need to be created every submission anymore. It can be created permanently and disposed when not used anymore (some caveats with it)
  21. * Improved Serialization system
  22. * Improved SveltoOnDots system
  23. * Tons of other improvements and bug fixes
  24. ## [3.2.5]
  25. * refactor and improved NativeBag and UnsafeBlob. This fix a previously known crash with Unity IL2CPP
  26. ## [3.2.0]
  27. * Improved checks on Svelto rules for the declaration of components and view components. This set of rules is not final yet (ideally one day they should be moved to static analyzers)
  28. * Introduce the concept of Entity Reference. It's a very light weight identifier to keep track of entities EGID that can change dynamically (EGIDs change when groups are swapped), Entity References never change. The underlying code will be optimised even further in future.
  29. * Introduced the concept of Disabled Group. Once a group is marked as disabled, queries will always ignore it.
  30. * Merged DispatchOnSet and DispatchOnChange and renamed to ReactiveValue. This class will be superseded by better patterns in future.
  31. * Added FindGroups with 4 components
  32. * Improved QueryGroups interface
  33. * Improved DynamicEntityDescriptor interface
  34. * Improved ExtendibleEntityDescriptor interface
  35. * Improved Native memory support
  36. * Improved Svelto and Unity DOTS integration
  37. * Improved and fixed Serialization code
  38. * Ensure that the creation of static groups is deterministic (GroupHashMap)
  39. ## [3.1.3]
  40. * bumped dependency of Svelto.Common due to an important fix there.
  41. ## [3.1.2]
  42. * improved async entity submission code (still experimental)
  43. * improved native entity operations debug info
  44. ## [3.1.1]
  45. * SubmissionEngine didn't need the EntityManager property, so it has been removed
  46. ## [3.1.0]
  47. * rearrange folders structures for clarity
  48. * added DoubleEntitiesEnumerator, as seen in MiniExample 4, to allow a double iteration of the same group skipping
  49. already checked tuples
  50. * reengineered the behaviour of WaitForSubmissionEnumerator
  51. * removed redudant SimpleEntitySubmissionSchedulerInterface interface
  52. * renamed BuildGroup in to ExclusiveBuildGroup
  53. * renamed EntityComponentInitializer to EntityInitializer
  54. * Entity Submission now can optionally be time sliced (based on number of entities to submit per slice)
  55. * working on the Unity extension Submission Engine, still WIP
  56. * added the possibility to hold a reference in a EntityViewComponent. This reference cannot be accesses as an object,
  57. but can be converted to the original object in OOP abstract layers
  58. * renamed NativeEntityComponentInitializer to NativeEntityInitializer