public void DrawCurveGizmos(float pointRadius, float lastPointArrivalRadius, bool loop, int highlightedIndex) { var points = FindPathPoints(); if (points.Length <= 0) { return; } var pointPositions = FindPathPoints().Select((PathPoint point) => (Vector2)point.transform.position); Gizmos.color = Color.red; GizmosHelper.DrawCurve(pointPositions, loop: loop); var pointIndex = 0; foreach (var point in pointPositions) { var isCurrent = pointIndex == highlightedIndex; Gizmos.color = isCurrent ? Color.blue : Color.red; GizmosHelper.DrawCircle(point, pointRadius); pointIndex++; } if (lastPointArrivalRadius > 0.0f) { Gizmos.color = Color.green; GizmosHelper.DrawCircle(points.Last().transform.position, lastPointArrivalRadius); } }
public static void DrawCurve <PointType>(IEnumerable <PointType> points, System.Func <PointType, Vector2> getPosition, float pointSize = -1.0f, bool wireframePoint = false) { Vector2?prevPosition = null; foreach (var point in points) { var position = getPosition(point); if (prevPosition.HasValue) { Gizmos.DrawLine(prevPosition.Value, position); } if (pointSize > 0.0f) { if (wireframePoint) { GizmosHelper.DrawCircle(position, pointSize); } else { Gizmos.DrawSphere(position, pointSize); } } prevPosition = position; } }
private void OnDrawGizmos() { if (m_sensor != null) { return; } Gizmos.color = Color.red; GizmosHelper.DrawCircle(transform.position, m_sensorRange); }
private void OnDrawGizmos() { if (m_ghostPlayer) { Gizmos.color = Color.green; GizmosHelper.DrawCircle(m_ghostPlayer.position, m_minOffset); Gizmos.color = Color.red; GizmosHelper.DrawCircle(m_ghostPlayer.position, m_maxOffset); } }
private void OnDrawGizmos() { if (!m_drawGizmos) { return; } Gizmos.color = m_color; GizmosHelper.DrawCircle(transform.position, m_radius); }
protected override void DrawGizmos() { base.DrawGizmos(); if (m_target == null) { return; } if (m_slowNearTarget) { Gizmos.color = Color.green; GizmosHelper.DrawCircle(m_target.position, m_brakingRadius); GizmosHelper.DrawCircle(m_target.position, m_epsilonRadius); } }
protected override void DrawGizmos() { base.DrawGizmos(); Gizmos.color = Color.magenta; GizmosHelper.DrawCircle(position, m_minDistance); GizmosHelper.DrawCircle(position, m_maxDistance); Gizmos.color = Color.black; GizmosHelper.DrawCircle(position, m_hullRadius); GizmosHelper.DrawCircle(position, m_hullRadius + m_safetyDistance); if (m_currentTargetData.HasValue) { var data = m_currentTargetData.Value; Gizmos.color = Color.white; GizmosHelper.DrawVector(position, data.direction); Gizmos.color = Color.blue; Gizmos.DrawLine(position, data.position); } }
public static void DrawCurve(IEnumerable <Vector2> points, float pointSize = -1.0f, bool wireframePoint = false, bool loop = false) { Vector2?firstPoint = null; Vector2?prevPoint = null; foreach (var point in points) { if (!firstPoint.HasValue) { firstPoint = point; } if (prevPoint.HasValue) { Gizmos.DrawLine(prevPoint.Value, point); } if (pointSize > 0.0f) { if (wireframePoint) { GizmosHelper.DrawCircle(point, pointSize); } else { Gizmos.DrawSphere(point, pointSize); } } prevPoint = point; } if (loop && prevPoint.HasValue && firstPoint.HasValue) { Gizmos.DrawLine(prevPoint.Value, firstPoint.Value); } }
private void OnDrawGizmos() { Gizmos.color = Color.red; GizmosHelper.DrawCircle(transform.position, m_radius); }
private void OnDrawGizmos() { Gizmos.color = m_gizmoColor; GizmosHelper.DrawCircle(m_center, m_radius, 64); }