A couple years ago, I made a voxel engine in Unity, and I would like to revisit that idea, but one of my main concerns is memory.
If I use C or C++, I can easily manage the memory of the voxel world.
My thought process is that the native side would handle the storage, modification, and lookup of voxel data while the C# side would merely interface with the native side. But I also have concerns about invoking the native code from C#, because I recall that in the past, that was a major bottleneck when interfacing with native code.
Has that problem been circumvented somehow with Unity? I may want to do thousands of calls to the native interface in a single frame, and I wonder if it would be more performant to just write it all in C#, or if I would benefit from having the native interface.
↧