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.

README.md 4.6KB

6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. # Svelto Entity Component System 2.5
  2. =====================================
  3. Real Entity-Component-System for c#. Enables to write encapsulated, decoupled, maintainable, highly efficient, data oriented, cache friendly, multi-threaded, code without pain. Although the framework is platform agnostic, it comes with several unity extensions.
  4. you can find a working example to learn how to use the framework here:
  5. ## Examples
  6. * **Survival Example (Unity)**: https://github.com/sebas77/Svelto-ECS-Example (including article)
  7. * **Vanilla Example (.Net Standard/.Net Core)**: https://github.com/sebas77/Svelto.ECS.Examples.Vanilla (including article)
  8. * **Entities as struct, cache friendly data oriented code:** https://github.com/sebas77/Svelto.ECS.Examples.CacheFriendlyECSWithEntityStructs (including article)
  9. ## Articles
  10. **Svelto users articles:**
  11. * https://eagergames.wordpress.com/category/ecs/ (Dario Oliveri)
  12. * https://blogs.msdn.microsoft.com/uk_faculty_connection/2018/05/08/entity-component-system-in-unity-a-tutorial/ (Lee Stott)
  13. **Framework articles:**
  14. * http://www.sebaslab.com/svelto-ecs-2-5-and-allocation-0-code/ (shows what's changed compared to 2.0)
  15. * http://www.sebaslab.com/svelto-ecs-2-0-almost-production-ready/ (shows what's changed compared to 1.0)
  16. * http://www.sebaslab.com/ecs-1-0/
  17. * http://www.sebaslab.com/learning-svelto-ecs-by-example-the-unity-survival-example/
  18. * http://www.sebaslab.com/learning-svelto-ecs-by-example-the-vanilla-example/
  19. * http://www.sebaslab.com/svelto-ecs-svelto-tasks-to-write-data-oriented-cache-friendly-multi-threaded-code-in-unity/
  20. **Theory related articles:**
  21. * http://www.sebaslab.com/ioc-container-for-unity3d-part-1/
  22. * http://www.sebaslab.com/ioc-container-for-unity3d-part-2/
  23. * http://www.sebaslab.com/the-truth-behind-inversion-of-control-part-i-dependency-injection/
  24. * http://www.sebaslab.com/the-truth-behind-inversion-of-control-part-ii-inversion-of-control/
  25. * http://www.sebaslab.com/the-truth-behind-inversion-of-control-part-iii-entity-component-systems/
  26. * http://www.sebaslab.com/the-truth-behind-inversion-of-control-part-iv-dependency-inversion-principle/
  27. * http://www.sebaslab.com/the-truth-behind-inversion-of-control-part-v-drifting-away-from-ioc-containers/
  28. Note: I included the IoC articles just to show you how I shifted over the years from using an IoC container to use a ECS framework.
  29. **The perfect companion for Svelto.ECS is Svelto.Tasks to run the logic of the Systems even on other threads!**
  30. * https://github.com/sebas77/Svelto.Tasks
  31. **Unity official forum thread:**
  32. * https://forum.unity.com/threads/open-source-svelto-ecs-lightweight-entity-component-system-for-c-and-unity.502163/
  33. **Official Chat**
  34. * https://gitter.im/Svelto-ECS/Lobby
  35. **NED-Studio Svelto ECS inspector (WIP)**
  36. * https://github.com/NED-Studio/LGK.Inspector
  37. ## How to clone
  38. The folders Svelto.ECS, Svelto.Tasks and Svelto.Common, where present, are submodules pointing to the relavite repositories. If you find them empty, you need to update them through the submodule command. Check some instructions here: https://github.com/sebas77/Svelto.ECS.Vanilla.Example/wiki
  39. **Note: don't beat yourself up if you find Svelto.ECS hard to use at first. The framework is very light in features, but it forces the use of a new coding paradigm and shifting code paradigm is hard! I will try to clarify all the concepts writing more and more articles**
  40. ## In case of bugs
  41. Best option is to fork and clone https://github.com/sebas77/Svelto.ECS.Tests, add a new test to reproduce the problem and request a pull. Then open a github, I come here pretty often :). Also feel free to contact me on twitter or leave comments on the blog!
  42. ## [The Github wiki page](https://github.com/sebas77/Svelto.ECS/wiki)
  43. It needs love and as far as I understood, anyone can edit it. Feel free to do so if you have a good understanding of Svelto!
  44. ## Svelto Framework is used to develop the following products(*):
  45. ![Robocraft](https://i.ytimg.com/vi/JGr1Em2Ip-c/maxresdefault.jpg)
  46. ![Robocraft Infinity](https://news.xbox.com/en-us/wp-content/uploads/Robocraft_Hero-hero.jpg)
  47. ![Robocraft Royale](https://static.altchar.com/live/media/images/950x633_ct/7707_Robocraft_Royale_2bc6bb8ceab8ce0a1568fb37bd826b3f.jpg)!
  48. ![Cardlife](https://i.ytimg.com/vi/q2jaUZjnNyg/maxresdefault.jpg)
  49. *if you want your products made with Svelto here, just send me an email or whatever, I'll be super happy to add them.
  50. **_Note: Dear Svelto Users : Although I am committed to help you and write articles as much as I can, I will never be able to keep all the documentation up to date. If you are a happy svelto user and you want to contribute, please feel free to update the github wiki! 🙏👊_**