【轉(zhuǎn)】Unity3D新手教學(xué),讓你十二小時,從入門到掌握?。ㄒ唬?/h2>

本文轉(zhuǎn)自:http://blog.csdn.net/aries_h/article/details/47307799

首先聲明一下,我用的Unity版本是4.6.6,編譯環(huán)境是VS2010,其余的我會慢慢介紹,安裝的過程這里我就不做講解了,度娘那會做的比我詳細(xì)。安裝包可以在最下面的聯(lián)系方式找我要,現(xiàn)在開始進(jìn)入主題。 打開Unity以后,我們先新建工程,這里要注意,一定要一個漢字都不能有,一定!避免出現(xiàn)不必要的Bug。

這里寫圖片描述

打開工程以后,就可以看到我們的Unity的操作界面。
這里寫圖片描述

這個我用著不方便,按照我個人的習(xí)慣,變成了這樣的布局,當(dāng)然這是個人喜好,可以不用模仿我。
這里寫圖片描述

那么這里每個模塊的每個功能我就不一一介紹了,具體功能介紹我推薦給大家?guī)妆緯怨﹨⒖肌?br>
這里寫圖片描述

這里寫圖片描述

首先看這里
這里寫圖片描述

快捷鍵從左至右為QWERT,功能為 Q:調(diào)整視圖 W:移動工具 E:旋轉(zhuǎn)工具 R:縮放工具 T:選擇工具 鼠標(biāo)右鍵為旋轉(zhuǎn)視圖,鼠標(biāo)中鍵等于按下Q的左鍵操作。
現(xiàn)在,我們來創(chuàng)建一個GameObject來練習(xí)如何操作Unity3D。
首先,創(chuàng)建一個Cube。
這里寫圖片描述

然后調(diào)整到MainCamera能觀看到的范圍內(nèi)。
這里寫圖片描述

在這里我要介紹一下MainCamera,這個是游戲的主攝像機(jī),也就是說我們玩游戲的視圖都是這個東西拍攝下來的游戲引擎里的游戲?qū)ο?。因為,場景沒有光源,所以MainCamera看到的東西比較暗,那么我們?yōu)閳鼍疤砑庸庠?,然后選中這個Cube按F2重命名為Floor,并將Floor通過縮放工具變成我們需要用的地板。
這里寫圖片描述

這里寫圖片描述

下面我們在Floor的上方再新建一個Cube,作為我們的主角,命名為Player。
這里寫圖片描述

現(xiàn)在我們點擊Unity上方像播放似的那個按鈕,就是運(yùn)行游戲,可以法線并沒有什么變化,現(xiàn)在我們給主角添加剛體。—-Rigidbody 并運(yùn)行游戲。
這里寫圖片描述

這里寫圖片描述

可以看到我們的Player掉到了Floor上,因為我們添加了物理引擎。他可以模擬重力,模擬碰撞、、、等等。
下面開始用代碼讓我們的Player動起來吧!
首先先創(chuàng)建C#腳本文件。
創(chuàng)建腳本前以防我們的工程文件會很亂,所以我們要新建一些文件夾,為我們的資源分類,我分了這些類,并且創(chuàng)建了一個PlayerMove的C#腳本。
這里寫圖片描述

這里寫圖片描述

雙擊用VS2010打開腳本。
這里寫圖片描述

下面我們開始寫移動的代碼。

public class PlayerMove : MonoBehaviour {

//定義移動的速度
public float MoveSpeed = 2f;
//定義旋轉(zhuǎn)的速度
public float RotateSpeed = 0.01f;

void Start () {

}

void Update () {

    //如果按下W或上方向鍵
    if(Input.GetKey(KeyCode.W)||Input.GetKey(KeyCode.UpArrow))
    {
        //以MoveSpeed的速度向正前方移動
        this.transform.Translate(Vector3.forward*MoveSpeed*Time.deltaTime);
    }
    if (Input.GetKey(KeyCode.S) || Input.GetKey(KeyCode.DownArrow))
    {
        this.transform.Translate(Vector3.back * MoveSpeed*Time.deltaTime);
    }

    //如果按下A或左方向鍵
    if (Input.GetKey(KeyCode.A) || Input.GetKey(KeyCode.LeftArrow))
    {
        //以RotateSpeed為速度向左旋轉(zhuǎn)
        this.transform.Rotate(Vector3.down * RotateSpeed);
    } 
    if (Input.GetKey(KeyCode.D) || Input.GetKey(KeyCode.RightArrow))
    {
        this.transform.Rotate(Vector3.up * RotateSpeed);
    }

}

}
···
把這個代碼托給Player。


這里寫圖片描述

好了,運(yùn)行游戲,你的Player已經(jīng)可以移動了。


這里寫圖片描述

按下Ctrl+S保存場景,第一講到此結(jié)束,未完待續(xù)。。。 。。。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容