// using Obi; using UnityEngine; public class RodLine : MonoBehaviour { // private ObiRope obiRope; private LineRenderer lineRenderer; private Transform[] points; public void GenerateLineRendererRope(Transform[] points, float thickness) { if (points.Length < 2) { Debug.LogError("LineRenderer requires at least two points."); return; } this.points = points; if (lineRenderer == null) { lineRenderer = base.gameObject.GetComponent(); if (lineRenderer == null) { lineRenderer = base.gameObject.AddComponent(); } } lineRenderer.positionCount = points.Length; lineRenderer.startWidth = thickness; lineRenderer.endWidth = thickness; for (int i = 0; i < points.Length; i++) { lineRenderer.SetPosition(i, points[i].position); } } private void LateUpdate() { if (lineRenderer == null) { return; } for (var i = 0; i < points.Length; i++) { var point = points[i]; if (point) { lineRenderer.SetPosition(i, point.position); } } } }