Shoot-em-up project showcasing out the new Entity-Component-System packages for Unity. Players control a ship trying to shoot up enemies around them. Art style inspired in Geometry Wars Series.
Source available on github.
Employing Unity's Entity-Component-System architecture, data is isolated from the logic of each system and is packed tightly in memory.
A grid is created with the data containing the connections of node pairs. As all nodes contain position data and physics data, multiple systems can be used in order to simulate a grid that is affected by physical forces.
For each pair of nodes found, a segment is defined. It is then used to generate a quad with a specified thickness that gets splitted up in two triangles, which then are stored directly on memory. Finally, a mesh rendering system loops over all triangles to draw the final grid.