可堂中有些無趣,於是突發起想來實作一個可被時間改變的sin波。
隨便讓一個圓形周轉吧:
public class RunCircle : MonoBehaviour { public Transform t; // Use this for initialization void Start () { } // Update is called once per frame void Update () { transform.RotateAround (t.position,Vector3.up, 2500); } }
周轉後,我們已經可以取得高度了,其實就是本身物件的值,接著把這個物件丟到另一個叫 single 的script裡面,並讓他不斷產生物件是往前的,就可以實現簡單的波型了!
using UnityEngine; using System.Collections; public class Single : MonoBehaviour { public Transform shape; public GameObject prefab; public Transform circlecore; // Use this for initialization void Start () { } // Update is called once per frame void Update () { transform.position = new Vector3(transform.position.x,transform.position.y,shape.position.z); Instantiate(prefab, circlecore.position, Quaternion.identity); } }記得,產生的物件要有 forward ,並且我設定在3秒鐘時刪除。
void Update () { transform.Translate (-1,0,0); Destroy (this.gameObject,3); }最後大概會長這樣:
沒有留言:
張貼留言