1.
void OnTriggerEnter(Collider other)//当Collider(碰撞体)进入tigger(触发器)时调用。 { other.transform.position = new Vector3(2, 6, 6);// 当物体碰撞时 other 物体坐标变为(2,6,6)。 }
2.
void OnTriggerStay(Collider other)//当Collider(碰撞体)接触tigger(触发器)时,OnTriggerStay将在每一帧调用 { other.transform.position = new Vector3(2, other.transform.position.y + 0.01f, 6);// 当other被碰撞体接触时,y坐标每帧都加0.01f }
3.物体的旋转(3种方式)
(1)transform.Rotate(2种)
this.transform.Rotate(10 * Time.deltaTime, 0, 0); //物体绕x轴旋以 10 * Time.deltaTime 的速度旋转
this.transform.Rotate(new Vector3(1,1,1), 10*Time.deltaTime, 0 ); //物体沿(1,1,1)的向量以 10 * Time.deltaTime 的速度旋转。
( 2 )transform.RotateAround
this.transform.RotateAround(target.transform.position, Vector3.forward, 45f * Time.deltaTime); //物体绕target 的坐标沿up的方向按照 45f * Time.deltaTime 速度旋转。
(3 )transform.LookAt
this.transform.LookAt(target.transform.position);//物体一直朝向target 的坐标
4.物体的缩放
(1)将物体直接缩放
public class test : MonoBehaviour { public float scale; void Start () { scale = 5f; } void Update () { transform.localScale = new Vector3(scale,scale, scale);//将物体的Scale 缩放为(scale,scale, scale) }
(2)通过曲线控制物体规律的缩放
public class test : MonoBehaviour { public float scale; public AnimationCurve curve;//生成一个曲线 void Start () { scale = 5f; } void Update () { scale = curve.Evaluate(Time.time / 2f) * 2f;//使scale的大小随curve变化 transform.localScale = new Vector3(scale,scale, scale);//将物体的Scale 缩放为(scale,scale, scale) }
与(1)相比(2)多了两个语句,一个用来生成曲线,一个用来使scale的大小随curve曲线变化,再通过Inspector面板里的脚本中的Curve选项设定曲线,从而达到规律缩放。
4.运行时生成
Debug.DrawLine 生出一个线段
Debug.DrawLine(new Vector3(0, 0, 0), new Vector3(6, 6, 6));//建一个(0,0,0)到(6,6,6)的线段