Newtonsoft.Json-for-Unity
bflat
Newtonsoft.Json-for-Unity | bflat | |
---|---|---|
3 | 27 | |
1,048 | 3,472 | |
- | 0.7% | |
3.2 | 6.9 | |
about 2 years ago | about 2 months ago | |
C# | C# | |
MIT License | GNU Affero General Public License v3.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Newtonsoft.Json-for-Unity
-
Native AOT Overview
With Unity/IL2CPP stuff: For general-purpose serialization libraries like JSON, you sometimes need to provide hints to make sure types are included: https://github.com/jilleJr/Newtonsoft.Json-for-Unity/wiki/Fi...
For schema serialization on known types, there are codegen tools (i.e. moc for MessagePack): https://github.com/neuecc/MessagePack-CSharp
MessagePack is migrating to Rosalyn code generators, so basically invisible codegen. Cysharp's newer serialization library, MessagePack, already uses this: https://github.com/Cysharp/MemoryPack
-
A small but useful class for creating saved variables in PlayerPrefs
But Newtonsoft.JSON can't serialize any object (like Vector3, for example) painlessly either. That's why I recommend to check out the Converters library — it solves a lot of problems.
-
I'm losing my mind. A month ago, I worked on a Unity project and ChatGPT helped me import a JSON parser quickly and correctly. Today, when I reused the project as a template, I faced same error, but instead of a swift answer I was fighting with it for 1 hour. Solutions/links were outdated and wrong.
In any case you can install it through the official method, it's a weird package because it's hidden in the package menu
bflat
-
Borgo is a statically typed language that compiles to Go
The sibling pretty much sums it up. But if you want more detail, read on:
Generally, there are three publishing options that each make sense depending on scenario:
JIT + host runtime: by definition portable, includes slim launcher executable for convenience, the platform for which can be specified with e.g. -r osx-arm64[0].
JIT + self-contained runtime: this includes IL assemblies and runtime together, either within a single file or otherwise (so it looks like AOT, just one bin/exe). These requires specifying RID, like in the previous option.
AOT: statically linked native binary, cross-OS compilation is not supported officially[1] because macOS is painful in general, and Windows<->Linux/FreeBSD is a configuration nightmare - IL AOT Compiler depends on Clang or MSVC and a native linker so it is subject to restrictions of those as a start. But it can be done and there are alternate, more focused toolchains, that offer it, like Bflat[1].
If you just want a hello world AOT application, then the shortest path to that is `dotnet new console --aot && dotnet publish -o {folder}`.
[0] https://learn.microsoft.com/en-us/dotnet/core/rid-catalog
[1] https://github.com/bflattened/bflat (can also build UEFI binaries, lol)
-
Learn how to build beautiful and interactive .NET command-line applications using System.CommandLine and Spectre.Console with my latest blog post
See here
-
Question about NativeAOT platform support
See B flat
-
Native AOT Overview
I've been wondering how to integrate modern .NET Core into a custom build system (buck2) and was wondering similar things. There's this project I think is cool called bflat[1] that basically makes the C# compiler more like the Go compiler in the sense it's a one-shot single-use tool that can cross compile binaries natively. It's done by one of the people on the .NET Runtime team as a side project, but quite neat.
I think in practice you're supposed to compile whole .dll's or assemblies all at once, which acts as the unit of compilation; I don't think the csharp compiler generates native object-files-for-every-.cs, the kind of approach you'd expect from javac or g++. Someone please correct me if I'm wrong though! I'd like to learn more about this.
[1] https://github.com/bflattened/bflat
-
If you were stuck on a remote island, would you pick C# as your programming language
You can compile without a GC using https://github.com/bflattened/bflat
- AOT
-
Hey people, made a game for my CS homework as a freshman using C#, what do you guys think about it?
nice. have you tried compile it using https://github.com/bflattened/bflat to have native executable? as long as you don't have PackgeReference it can be compiled using bflat instead of full dotnet
- Bflat – a single ahead of time crosscompiler and runtime for C#
-
bflat - Build native C# applications independent of .NET
The creator actually addresses this issue: