// Use this for initialization void Start() { // get current plane count + rand vals pcObj = GameObject.Find("PlaneCounter") as GameObject; pc = pcObj.GetComponent<PlaneCounter>(); _i = pc.planeCount; _scaleXFactor = pc.scaleXFactor; _xPosRand = pc.xPosRand; myObj.transform.rotation = Quaternion.Euler(flip * 20 * _i, 270, 90); myObj.transform.RotateAround(Vector3.zero, Vector3.zero, flip * 20 * _i); // position Vector3 pos = myObj.transform.position; float sinY = Mathf.Sin((Time.time-_i)*5)*3; pos.y = pos.y + (sinY*sinY); // sinY squared undulates the y-pos pos.x = pos.x + _xPosRand + (flip*_distX); pos.z = _i*_distZ; myObj.transform.position = pos; // scale float localScaleX = myObj.transform.localScale.x; Vector3 newScale = new Vector3(localScaleX - _scaleXFactor , myObj.transform.localScale.y, myObj.transform.localScale.z); myObj.transform.localScale = newScale; // add children to parent container myObj // newObj.transform.parent = this.transform; }
// Use this for initialization void Start() { // get current plane count + rand vals pcObj = GameObject.Find("PlaneCounter") as GameObject; pc = pcObj.GetComponent <PlaneCounter>(); _i = pc.planeCount; _scaleXFactor = pc.scaleXFactor; _xPosRand = pc.xPosRand; myObj.transform.rotation = Quaternion.Euler(flip * 20 * _i, 270, 90); myObj.transform.RotateAround(Vector3.zero, Vector3.zero, flip * 20 * _i); // position Vector3 pos = myObj.transform.position; float sinY = Mathf.Sin((Time.time - _i) * 5) * 3; pos.y = pos.y + (sinY * sinY); // sinY squared undulates the y-pos pos.x = pos.x + _xPosRand + (flip * _distX); pos.z = _i * _distZ; myObj.transform.position = pos; // scale float localScaleX = myObj.transform.localScale.x; Vector3 newScale = new Vector3(localScaleX - _scaleXFactor, myObj.transform.localScale.y, myObj.transform.localScale.z); myObj.transform.localScale = newScale; // add children to parent container myObj // newObj.transform.parent = this.transform; }
// Use this for initialization void Start() { _startTime = Time.time; // calc some values float scaleXFactor = Random.Range(0.9f, 3.5f); float xPosRand = Random.Range(0.5f, 1.0f); // get current plane count pcObj = GameObject.Find("PlaneCounter") as GameObject; pc = pcObj.GetComponent <PlaneCounter>(); // create objects GameObject newObj = Instantiate(myObj, transform.position, Quaternion.Euler(20 * _i, 270, 90)) as GameObject; newObj.transform.RotateAround(Vector3.zero, Vector3.zero, 20 * _i); // mirrored object GameObject newObj_m = Instantiate(myObj, transform.position, Quaternion.Euler(-20 * _i, 270, 90)) as GameObject; newObj_m.transform.RotateAround(Vector3.zero, Vector3.zero, -20 * _i); // add children to parent container myObj // newObj.transform.parent = this.transform; // newObj_m.transform.parent = this.transform; // position Vector3 pos = newObj.transform.position; float sinY = Mathf.Sin((Time.time - _startTime) * 5) * 3; pos.y = pos.y + (sinY * sinY); // sinY squared undulates the y-pos pos.x = pos.x + xPosRand + _distX; pos.z = _i * _distZ; newObj.transform.position = pos; // scale float localScaleX = newObj.transform.localScale.x; Vector3 newScale = new Vector3(localScaleX - scaleXFactor, newObj.transform.localScale.y, newObj.transform.localScale.z); newObj.transform.localScale = newScale; // mirrored position Vector3 pos_m = newObj_m.transform.position; pos_m.y = pos_m.y + (sinY * sinY); // sinY squared undulates the y-pos pos_m.x = pos.x + xPosRand - _distX; pos_m.z = _i * _distZ; newObj_m.transform.position = pos_m; // mirrored scale float localScaleX_m = newObj_m.transform.localScale.x; Vector3 newScale_m = new Vector3(localScaleX_m - scaleXFactor, newObj_m.transform.localScale.y, newObj_m.transform.localScale.z); newObj_m.transform.localScale = newScale_m; }
// Use this for initialization void Start() { _startTime = Time.time; // calc some values float scaleXFactor = Random.Range(0.9f, 3.5f); float xPosRand = Random.Range(0.5f, 1.0f); // get current plane count pcObj = GameObject.Find("PlaneCounter") as GameObject; pc = pcObj.GetComponent<PlaneCounter>(); // create objects GameObject newObj = Instantiate(myObj, transform.position, Quaternion.Euler(20*_i,270,90)) as GameObject; newObj.transform.RotateAround(Vector3.zero, Vector3.zero, 20 * _i); // mirrored object GameObject newObj_m = Instantiate(myObj, transform.position, Quaternion.Euler(-20*_i,270,90)) as GameObject; newObj_m.transform.RotateAround(Vector3.zero, Vector3.zero, -20 * _i); // add children to parent container myObj // newObj.transform.parent = this.transform; // newObj_m.transform.parent = this.transform; // position Vector3 pos = newObj.transform.position; float sinY = Mathf.Sin((Time.time-_startTime)*5)*3; pos.y = pos.y + (sinY*sinY); // sinY squared undulates the y-pos pos.x = pos.x + xPosRand + _distX; pos.z = _i*_distZ; newObj.transform.position = pos; // scale float localScaleX = newObj.transform.localScale.x; Vector3 newScale = new Vector3(localScaleX - scaleXFactor , newObj.transform.localScale.y, newObj.transform.localScale.z); newObj.transform.localScale = newScale; // mirrored position Vector3 pos_m = newObj_m.transform.position; pos_m.y = pos_m.y + (sinY*sinY); // sinY squared undulates the y-pos pos_m.x = pos.x + xPosRand - _distX; pos_m.z = _i*_distZ; newObj_m.transform.position = pos_m; // mirrored scale float localScaleX_m = newObj_m.transform.localScale.x; Vector3 newScale_m = new Vector3(localScaleX_m - scaleXFactor , newObj_m.transform.localScale.y, newObj_m.transform.localScale.z); newObj_m.transform.localScale = newScale_m; }