void Start() { this.m_flowers = new List <Plant>(64); for (int i = 0; i < subdivCount; i++) { float ring_t = (float)i / subdivCount; Material flowerMat = flowerMats[i % flowerMats.Count]; bool evenRow = ((i & 0x1) == 0); int perRow = evenRow ? 5 : 4; float delta = 2f / 5; float baseOffset = -1f + (evenRow ? (0.5f * delta) : delta); for (int f = 0; f < perRow; f++) { float lat_t = baseOffset + (f * delta); worldParams.CalcOrientation(ring_t, lat_t, true, out var position, out var rotation); var inst = Plant.Instantiate(pfFlower, position, rotation, transform); Quaternion extraSpin = Quaternion.AngleAxis(180f, inst.transform.up); rotation = extraSpin * rotation; inst.transform.rotation = rotation; inst.transform.localScale = Vector3.zero; inst.kRenderer.sharedMaterial = flowerMat; m_flowers.Add(inst); } } }
void Start() { // Position this correctly worldParams.CalcOrientation(ringPosition, lateralPosition, true, out var worldPos, out var worldRot ); transform.SetPositionAndRotation(worldPos, worldRot); m_scaleSlider = 0f; transform.localScale = Vector3.zero; }