Awesome
SharedArray Demo
A Unity project that visually demonstrates the use of the SharedArray library, to achieve more efficient integration with Unity's C# job system and newer math types.
Running
Clone this repo & open it as a project in Unity 2019.3+.
To run the demo, open the SharedArray Demo
scene, inspect the Demo Mesh Drawer
object in the scene, and click ▶.
What It Does
Arbitrary calculations for changing the position & color of mesh instances are performed, each frame.
These are done on worker threads, in C# jobs, using Unity.Mathematics types & the Burst compiler.
After the calculations are complete for a frame, we draw the updated mesh instances.
The same data / memory used in the calculation jobs is used as a normal array on the main thread, without copying.
This is so we can use that data as arguments to Unity methods like Graphics.DrawMeshInstanced
that take normal C# arrays.