Summary
This chapter first introduced what data-oriented design is and the difference between data-oriented design and traditional object-oriented design. Then, we explored DOTS in Unity and the three technology modules that make it up, namely, the C# Job System, ECS, and the Burst compiler.
After that, we discussed in detail how to implement asynchronous programming in Unity and used an example to demonstrate how to use Unity's C# Job System to implement multithreading to improve game performance.
We also introduced the concept of ECS, discussed the difference between ECS and the traditional GameObject-Components architecture in Unity, and demonstrated how to use ECS and the C# Job System to further improve game performance.
Finally, we explored what the Burst compiler and HPC# are and how to enable them to generate highly optimized native code for your Unity games.
By reading this chapter, you should now understand how to work with DOTS correctly in Unity. In the...