예제 #1
0
 private void Update()
 {
     if (rebuild)
     {
         rebuild = false;
         Rebuild();
     }
     if (cleanup)
     {
         cleanup = false;
         UniGenTools.Clear(transform);
     }
 }
예제 #2
0
    private void Rebuild()
    {
        UniGenTools.Clear(transform);

        for (int i = 0; i < count; i++)
        {
            var element = UniGenTools.InstantiateElement(order, prefabs, ref index);
            element.transform.SetParent(transform);

            element.transform.localPosition = offset + step * i + CreateRandomVector(randomizeStepPower);
            element.transform.localRotation =
                Quaternion.Euler(rotation + rotationStep * i) *
                Quaternion.Euler(CreateRandomVector(randomizeRotationPower));
        }
    }
예제 #3
0
    private void Rebuild()
    {
        UniGenTools.Clear(transform);

        for (int z = 0; z < zCount; z++)
        {
            for (int x = 0; x < xCount; x++)
            {
                var element = UniGenTools.InstantiateRandomElement(prefabs);
                element.transform.SetParent(transform);

                element.transform.localPosition =
                    stepXOffset * x +
                    stepZOffset * z;
            }
        }
    }