Svelto.Tasks 2.0 is a C# library designed for multithreaded, allocation-free task execution, ideal for game development. It runs coroutines in both serial and parallel forms, providing developers with fine control over task execution, cancellation, and profiling. The library is platform-agnostic, supporting various C# environments while integrating with .NET tasks and Unity Jobs.Read More →

Introduction My Xmas gift to the Svelto Community this year was the complete rewrite of the Survival Svelto.ECS MiniExample. This example is used as a reference by all newcomers because it’s the simplest to digest for people who are not in the ECS mentality and still think in terms ofRead More →

Previously, in Svelto.ECS, it was possible to query entity components directly as a managed array, which would have resulted in the fastest way to iterate over the components in c#. Since Svelto.ECS 3.0 and because now the framework supports natively native memory as well, I decided to remove this possibilityRead More →

I had two interesting problems to solve during the development of Svelto.ECS, which in short are: Set an implemented property of a struct, but only when the struct implements a specific interface, from a generic method and without casting the struct to the interface Assign an object to a fieldRead More →

20/03/2023 update I wrote a new demo that doesn’t need to use GPUInstancer. Code is now available on github. Note that I also updated the code to use GraphicBuffers instead than ComputeBuffers. For the game I am currently developing, Gamecraft, we are using Svelto.ECS for the game logic, Unity ECSRead More →

A recent tweet asking about how to achieve zero allocation code in Unity inspired me to write a short piece about the importance of memory allocation in c# and game development. C# wasn’t initially designed for game development, but today, thanks to Unity, ECS and Burst, we can achieve greatRead More →

Note: this article is now outdated. The new version is found at: https://www.sebaslab.com/the-new-svelto-ecs-survival-mini-example/ Introduction Lately I have been discussing Svelto.ECS extensively with several, more or less experienced, programmers. I gathered a lot of feedback and took a lot of notes that I will be using as starting point for myRead More →

Note: this article is not maintained. The mini example Doofuses has a third and final iteration for a long time now and it is what all my new articles refer to when talking about this example. Iteration 3 enhances the code using Burst and Jobs. After finishing writing my previousRead More →

can Svelto.ECS be used with UnityECS? Is the Unity Job system really better than Svelto.Tasks? Let’s see it.Read More →

Svelto ECS 2.7 is out, let’s see what’s new: Exclusive Groups, new SwapEntityGroup and RemoveEntity and new Sequencer. Read More →