public static void DrawMountPoints(float cubeSize, MyCubeBlockDefinition def, ref MatrixD drawMatrix) { var mountPoints = def.MountPoints; if (mountPoints == null) { return; } if (!MyDebugDrawSettings.DEBUG_DRAW_MOUNT_POINTS_AUTOGENERATE) { DrawMountPoints(cubeSize, def, drawMatrix, mountPoints); } else { //Generate mount points from model collisions and draw them if (def.Model != null) { int index = 0; MyModel model = MyModels.GetModel(def.Model); foreach (var shape in model.HavokCollisionShapes) { MyPhysicsBody.DrawCollisionShape(shape, drawMatrix, 0.2f, ref index); } var newMountPoints = AutogenerateMountpoints(model, cubeSize); DrawMountPoints(cubeSize, def, drawMatrix, newMountPoints.ToArray()); } } if (MyDebugDrawSettings.DEBUG_DRAW_MOUNT_POINTS_AXIS_HELPERS) { DrawMountPointsAxisHelpers(def, ref drawMatrix, cubeSize); } }