码迷,mamicode.com
首页 > 其他好文 > 详细

1、简单控制

时间:2017-08-23 20:05:11      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:代码   限制   oat   移动   self   鼠标   字符   平移   ica   

一、物体移动

法1:

    void Update ()
    {
        //transform:(转换)Translate:(平移)Input.GetAxis:(获得轴输入) Horizontal:(水平轴)Vertical:(垂直轴)
        transform.Translate(Input.GetAxis("Horizontal") * Time.deltaTime * 5, 0, Input.GetAxis("Vertical") * Time.deltaTime * 5);
    }
    //Time.deltaTime(使物体匀速):如果不乘以Time.deltaTime则以每帧为单位进行旋转,如果乘以Time.deltaTime则以每秒为单位

 其中:

    void Update ()
    {    //物体方向以摄像机坐标为准
        transform.Translate(Vector3.right * Time.deltaTime, Camera.main.transform);
    }
    void Update ()
    {    //物体方向以世界坐标为准,其中Space.Self以本地(物体)坐标为准
        transform.Translate(Vector3.forward * Time.deltaTime,Space.World);
    }

 

 

法2:

    void Update ()
    {

        if (Input.GetKey(KeyCode.W))//GetKey(获取键盘输入)KeyCode(键码)
        {
            transform.Translate(Vector3.forward * Time.deltaTime * 5);
        }
        if (Input.GetKey(KeyCode.S))
        {
            transform.Translate(0, 0, -Time.deltaTime * 5);//三个参数对应于(在X抽上左右移动,在Y轴上上下移动,在Z轴上前后移动)
        }
        if (Input.GetButton("Jump"))
        {
            transform.Translate(Vector3.up * Time.deltaTime * 5);
        }
    }

 

 注:Translate后接Vector3三维矢量不需要添加三个参数。GetButton:后面加双引号直接输入按键名称的字符串,而GetKey则是输入字符码。(GetButton:点住鼠标不放,代码会持续运行;GetButtondown:点一次代码运行一次;GetButtonUp:放开鼠标才会执行)

二、物体的旋转

    float rotateSpeed = 50f;
    void Update ()
    {
        if (Input.GetButton("Fire2"))
        {
            transform.Rotate(Vector3.up * Time.deltaTime * rotateSpeed);
        }
        if (Input.GetButton("Fire1"))
        {
            transform.Rotate(Time.deltaTime * rotateSpeed, 0, 0);
        }
    }

 三、限制移动范围

    void Update ()
    {
        if (transform.position.x > -4 && transform.position.x < 4)
        {
            transform.Translate(Input.GetAxis("Horizontal") * Time.deltaTime * 5, 0, 0);
        }
        if (transform.position.x < -4)
        {
            transform.Translate(Time.deltaTime * 5, 0, 0);
        }
        if (transform.position.x > 4)
        {
            transform.Translate(-Time.deltaTime * 5, 0, 0);
        }
    }

 

1、简单控制

标签:代码   限制   oat   移动   self   鼠标   字符   平移   ica   

原文地址:http://www.cnblogs.com/yx-xiansheng/p/7407412.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!