Skip to content

First of all, thank you for porting EnTT to C# #3

@Sedomanai

Description

@Sedomanai

I never imagined anyone would ever think of doing this so I didn't bother searching before... but it looks like I was wrong.

The thing I'm most interested in is performance. Obviously it would be better than most ECS systems in C# that don't take GC or cache into consideration. However, I was wondering how close to native performance one can get to C++ when one would write an entire program out of EnTT with no object references.

I somewhat religiously depend on ECS for everything in C++ such that I almost never use native pointers for nearly anything. To my understanding, the only reason C# can be potentially slower than C++ is its GC and cache-unfriendly logistics. If we can bypass that with EnTT, would the performance technically be similar to native code?

I just needed to make sure, and know what really is going under the hood that can potentially be different from its C++ counterpart. But if what you promised is correct, this just about solves nearly all problems for me.

p.s. I would very much like at least a very simple prototype of documentation. On how to properly or partially serialize a component, for example, or marking it for automatic registration using attributes (does it work the same as Unity? SerializeField and such). And other stuff available in the original entt.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions