Example #1
0
        public static void DrawDashedLine(this RuntimeGizmoDrawer drawer,
                                          Vector3 a, Vector3 b,
                                          float segmentsPerMeter      = 32f,
                                          float normalizedPhaseOffset = 0f)
        {
            var distance      = (b - a).magnitude;
            var numSegments   = distance * segmentsPerMeter;
            var segmentLength = distance / numSegments;

            var dir = (b - a) / distance;

            for (float i = normalizedPhaseOffset; i < numSegments; i += 2)
            {
                var start = a + dir * segmentLength * i;
                var end   = a + dir * Mathf.Min(segmentLength * (i + 1), distance);

                drawer.DrawLine(start, end);
            }
        }
Example #2
0
 public static void DrawRay(this RuntimeGizmoDrawer drawer,
                            Vector3 position, Vector3 direction)
 {
     drawer.DrawLine(position, position + direction);
 }