private void DrawSelectedLayer() { var layers = World.Active.EntityManager.GetBuffer <Layers>(mBoundsEntities[0]); var colors = World.Active.EntityManager.GetBuffer <Colors>(mBoundsEntities[0]); var idx = System.Math.Max(0, System.Math.Min(Globals.Instance.data.BoundsLayer, layers.Length - 1)); var voxels = World.Active.EntityManager.GetBuffer <VoxelAABB>(layers[idx].Value); for (int j = 0; j < voxels.Length; j++) { BoundsDrawer.Draw(voxels[j].Value, colors[idx].Value); } }
private void DrawOutermostLayers() { var layers = World.Active.EntityManager.GetBuffer <Layers>(mBoundsEntities[0]); var colors = World.Active.EntityManager.GetBuffer <Colors>(mBoundsEntities[0]); var outer = World.Active.EntityManager.GetBuffer <VoxelAABB>(layers[1].Value).Reinterpret <Unity.Mathematics.AABB>(); var inner = World.Active.EntityManager.GetBuffer <VoxelAABB>(layers[2].Value).Reinterpret <Unity.Mathematics.AABB>(); for (int i = 0; i < inner.Length; i++) { BoundsDrawer.Draw(inner[i], colors[1].Value); //Handles.Label(inner[i].Center, $"{i}"); } for (int i = 0; i < outer.Length; i++) { var pos = outer[i].Center; pos.x -= outer[i].Extents.x; pos.y -= outer[i].Extents.y; pos.z -= outer[i].Extents.z; BoundsDrawer.Draw(outer[i], colors[2].Value); //Handles.Label(pos, $"{i}"); } }