Gimme DOTS Geometry

Gimme DOTS Geometry utilizes Unity's Burst Compiler to enable very fast query times for various questions regarding space, e.g. "Which objects are within a 10m radius?" or "How many entities are inside this area?"


The stuff you'll get:

  • 26 Sample Scenes
  • Native spatial-hashed Quadtrees and Octrees (sparse and dense variants)
  • Mesh Slicing
  • Native 2D KD-Tree and 3D KD-Tree
  • Voronoi Diagrams
  • Dynamic R* Trees (2D + 3D)
  • Dynamic Ball* Trees (2D + 3D)
  • Hull Algorithms (Convex Hull + Minimum Enclosing Disc and Sphere)
  • Polygons with holes and extremely fast Query Jobs (and two triangulation methods)
  • Delaunay Triangulation
  • Specialized algorithms for your custom Boids (All Radius and All Rectangle Queries)
  • Advanced Native Containers
    • Native Priority Queue (Binary Heap)
    • Native Sorted List (Skip List)
    • Native AVL Tree
  • Line Intersection Jobs
  • And a lot more!

All spatial data structures support parallel queries. Like the polygons themselves, polygon queries support holes as well.



Dependencies:

  • Burst 1.8 or higher
  • Collections 1.4 or higher
  • Mathematics 1.2 or higher

Support and Extensions:


ECS is not a requirement for Gimme DOTS Geometry to work. It is however supported and can interoperate with the Entities package if you want to. You can find additional example scenes in the ECS_Samples.unitypackage contained in the sample folder on how to integrate some of the data structures into ISystems. In order for the additional scenes to work, you will require:

  • Unity 2022.3 or above
  • URP 14 or above
  • Entities 1.0 or above
  • Entities Graphics 1.0 or above

Gimme DOTS Geometry has an extension called Gimme GPU Geometry, also available on the asset store!


More Information:


Documentation


Contact:


Email | Website | Discord