- Home /
This question was
closed Apr 05, 2021 at 10:49 AM by
Dracolyte for the following reason:
Figured it finally myself out
Question by
Dracolyte · Apr 05, 2021 at 10:11 AM ·
c#assetstore
How do I get my pathcreator to use my randomly generated path? (Bezier path creator)
Im using this from the assetstore: https://assetstore.unity.com/packages/tools/utilities/b-zier-path-creator-136082
Has anyone an idea, how I attach my generated path to a pathcreator and use it with a roadmeshcreator? I want to get the pathcreator use my generated path as a path instead of the default path or a hand made one.
public class PathGenerator : MonoBehaviour
{
private Vector2[] points;
[SerializeField]private RoadMeshCreator roadMeshCreator;
private PathCreator pathCreator;
void Start()
{
pathCreator = gameObject.AddComponent<PathCreator>();
GeneratePath(GenerateVector2s(points), false);
}
VertexPath GeneratePath(Vector2[] points, bool closedPath)
{
BezierPath bezierPath = new BezierPath(this.points, false, PathSpace.xy);
return new VertexPath(bezierPath, transform, 1f, 1f);
}
Vector2[] GenerateVector2s(Vector2[] Gpoints)
{
int randomLength = Random.Range(3, 8);
Gpoints = new Vector2[randomLength];
Vector2 prevPos = new Vector2(0, 0);
foreach (Vector2 Gpoint in Gpoints)
{
float randomPosX = Random.Range(-10, 10);
float randomPosY = Random.Range(-10, 10);
Vector2 point1 = Gpoint;
point1 = new Vector2(randomPosX, randomPosY) + prevPos;
prevPos = new Vector2(point1.x, point1.y);
Gpoint.Set(point1.x, point1.y);
points = Gpoints;
}
return points;
}
}
Comment