本文共 1725 字,大约阅读时间需要 5 分钟。
第一课程:
1.Unity类名必须与文件名保持一致2.讲属性设置为public可以在Unity中访问 public float speed; // Use this for initialization void Start () { } // Update is called once per frame void Update () { //获取左右方向键的的值(范围为-1到1) float amtToMove = Input.GetAxis ("Horizontal") * speed; //使用矩阵进行平移 gameObject.transform.Translate (Vector3.right * amtToMove); }3.摄像机:游戏的输出画面是由摄像机所观测的场景而实现的,将游戏场景呈现到2D的计算机屏幕,有
两种投影方式为透视投影和正交投影,Unity默认为透视投影,透视投影感觉有距离感,正交投影没有距离感。 开发Unity2D游戏,需要将投影方式改为正交投影。透视投影的三个主要参数:
FieldofView(视角), NearClipPlane(近看平面), FarClipPlane(远看平面)4.GameObject对象包含transform,camera属性,GetComponet和AddComponent等方法5.Transform实现对象的位置、旋转以及缩放 position rotation localScale Translate方法 Rotate方法6.Input.GetAxis()与Input.GetAxisRaw()检测方向键 检测上下移动Input.GetAxis("Vertical") 检测左右移动Input.GetAxis("Horizontal")7.Time类 deltaTime 上一帧到本帧的时间,单位为秒8.三个Update的调用顺序MonoBehaviour.FixedUpdate()MonoBehaviour.Update()MonoBehaviour.LateUpdate()9.循环移动方块
public class Player : MonoBehaviour {
public float playerSpeed;
// Use this for initialization void Start () { } // Update is called once per frame void Update () { Debug.Log ("Update"); var moveto = Input.GetAxis ("Horizontal") *Time.deltaTime* playerSpeed; gameObject.transform.Translate (Vector3.right * moveto);if (transform.position.x > 9.15) {
transform.position=new Vector3(-9.15f,transform.position.y); }if (transform.position.x <- 9.15) {
transform.position=new Vector3(9.15f,transform.position.y); } }void LateUpdate(){
Debug.Log ("LateUpdate"); }void FixedUpdate(){
Debug.Log("FixedUpdate"); }}9.创建按钮并响应按钮操作void OnGUI(){
if (GUI.Button (new Rect (0, 0, 100, 50), "Play")) {}
else if (GUI.Button (new Rect (0, 60, 100, 50), "Pause")) { } else if (GUI.Button (new Rect (0, 120, 100, 50), "Stop")) { } }转载地址:http://wpfna.baihongyu.com/