其他分享
首页 > 其他分享> > Unity——生命周期函数

Unity——生命周期函数

作者:互联网

事件函数执行顺序:

 

 

1. 移动

 1 public class Test : MonoBehaviour
 2 {
 3     public float speed;
 4 
 5     void Update()
 6     {   //按世界坐标系移动
 7         if (Input.GetKey(KeyCode.W))
 8             transform.position += Vector3.forward * Time.deltaTime * speed;
 9         if (Input.GetKey(KeyCode.S))
10             transform.position += Vector3.back * Time.deltaTime * speed;
11         if (Input.GetKey(KeyCode.A))
12             transform.position += Vector3.left * Time.deltaTime * speed;
13         if (Input.GetKey(KeyCode.D))
14             transform.position += Vector3.right * Time.deltaTime * speed;
15 
16 
17         if (Input.GetKey(KeyCode.W))
18             transform.Translate(Vector3.forward * Time.deltaTime * speed, Space.World);
19         if (Input.GetKey(KeyCode.S))
20             transform.Translate(Vector3.back * Time.deltaTime * speed, Space.World);
21         if (Input.GetKey(KeyCode.A))
22             transform.Translate(Vector3.left * Time.deltaTime * speed, Space.World);
23         if (Input.GetKey(KeyCode.D))
24             transform.Translate(Vector3.right * Time.deltaTime * speed, Space.World);
25 
26 
27         //按自身坐标系移动
28         if (Input.GetKey(KeyCode.W))
29             transform.position += transform.forward * Time.deltaTime * speed;
30         if (Input.GetKey(KeyCode.S))
31             transform.position += -transform.forward * Time.deltaTime * speed;
32         if (Input.GetKey(KeyCode.A))
33             transform.position += -transform.right * Time.deltaTime * speed;
34         if (Input.GetKey(KeyCode.D))
35             transform.position += transform.right * Time.deltaTime * speed;
36 
37         //默认Space.Self,按自身坐标系移动
38         if (Input.GetKey(KeyCode.W))
39             transform.Translate(Vector3.forward * Time.deltaTime * speed);
40         if (Input.GetKey(KeyCode.S))
41             transform.Translate(Vector3.back * Time.deltaTime * speed);
42         if (Input.GetKey(KeyCode.A))
43             transform.Translate(Vector3.left * Time.deltaTime * speed);
44         if (Input.GetKey(KeyCode.D))
45             transform.Translate(Vector3.right * Time.deltaTime * speed);
46     }
47 }
transform
 1 public class Test : MonoBehaviour
 2 {
 3     public float force;
 4     Rigidbody rd;
 5     private void Start()
 6     {
 7         rd = GetComponent<Rigidbody>();
 8     }
 9 
10     void Update()
11     {
12         float hor = Input.GetAxis("Horizontal");
13         float ver = Input.GetAxis("Vertical");
14         Vector3 direction = new Vector3(hor, 0, ver);
15         rd.AddForce(direction * force);
16         rd.velocity = direction * force;
17         rd.MovePosition(transform.position + direction);
18     }
19 }
rigibody

 

标签:生命,周期函数,transform,GetKey,Unity,Time,Input,speed,KeyCode
来源: https://www.cnblogs.com/tomatokely/p/15311286.html