fury icon indicating copy to clipboard operation
fury copied to clipboard

[C#] Fury support for C#

Open jiangguilong2000 opened this issue 1 year ago • 10 comments

for unity game development

jiangguilong2000 avatar Jul 18 '23 04:07 jiangguilong2000

@jiangguilong2000 Thanks for submitting this issue. As a multi-language serialization framework, c# support is important for fury. But we don't have experience for c#. Maybe someone in the community are interested to take this issue.

chaokunyang avatar Jul 18 '23 10:07 chaokunyang

C#/.net already has a good foundation for this, like Expression Trees, which can save quite a lot of effort. I am working on a very preliminary C# port on top of Fury java implementation, but I cannot commit to anything yet.

iceboundrock avatar Jul 20 '23 17:07 iceboundrock

C#/.net already has a good foundation for this, like Expression Trees, which can save quite a lot of effort. I am working on a very preliminary C# port on top of Fury java implementation, but I cannot commit to anything yet.

@iceboundrock that would be very great, looking forward to it. Let us know if there are anything we can help. We're formalize our cross language protocol into a text spec. But it may still take some time. The csharp poc can skip protocol alignment and do it in the future

chaokunyang avatar Jul 21 '23 01:07 chaokunyang

hope support c#

nfsfairytale avatar Sep 11 '23 03:09 nfsfairytale

hope support c#

Glad to see more demands for this, pined the issue to prioritize it! Hope this can help it get supported sooner.

chaokunyang avatar Oct 08 '23 13:10 chaokunyang

@iceboundrock Expression trees sound like a great idea for selectively deserializing fields. On the serialization end, it may be worth considering source generators for optimum performance.

jpfed avatar Oct 26 '23 15:10 jpfed

@jpfed How about generate code at runtime? Generate source code statically will need users to integrate it with build pipeline, which may introduce extra user mind burden.

chaokunyang avatar Oct 26 '23 16:10 chaokunyang

https://fury.apache.org/docs/specification/fury_xlang_serialization_spec is our cross-language serialization spec, anyone interested at this issue can take a look at this document to know how to implement C# for fury

chaokunyang avatar Apr 18 '24 10:04 chaokunyang

C#/.net already has a good foundation for this, like Expression Trees, which can save quite a lot of effort. I am working on a very preliminary port on top of Fury java implementation, but I cannot commit to anything yet.C#

I would like to know the progress of C# porting. We can form a small team to promote this matter together, as the addition of C# serialization is crucial for Unity game development. After all, Fury is far superior to other serialization options.

Hi @nfsfairytale , this hasn't been started. I can help break the work down, But I am not familiar with c# and busy with other things recently, thus can't take up part of the work

chaokunyang avatar Aug 19 '24 11:08 chaokunyang