Unity3D入門:一
*添加天空盒子:
添加天空盒 有兩種方式
1 : 在目前相機上添加skybox
2 : 在目前場景上添加skybox
上面的兩種方式的結果是一樣的 第一種方式的優勢在于 如果 世界中有多個錄影機的話,切換錄影機 需要看不同的天空 就可以使用這種方式實作
我們先來試試unity 給我們的提供的天空盒 吧
要使用 unity 當然要先導入天空資源包啦 導入方式 :
assets -> import package ->skyboxes
然後點選camera屬性的skybox後面的一個小圓按鈕(中間有個實心的點),然後選擇自己想要的天空盒效果
*動态建立一排附有剛體屬性的cube:
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 4; j++)
{
GameObject goNew = GameObject.CreatePrimitive(PrimitiveType.Cube);
goNew.transform.position = new Vector3(i, j, -1);//x,y,z坐标
goNew.AddComponent<Rigidbody>();
}
}
*如果點選滑鼠,給目前剛體添加一個向前的推力:
if (Input.GetMouseButtonDown(0))
{
this.gameObject.rigidbody.AddForce(Vector3.forward*10,ForceMode.Impulse);//一個力方向的基本向量,然後乘以倍數,顯得力就大一些
}
*按下鍵盤某鍵,然後程式作出反應:
var MoveSpeed=5;
var RotateSpeed=20;
function Update () {
if(Input.GetKey(KeyCode.W))
this.transform.Translate(Vector3.forward*Time.deltaTime*MoveSpeed);
else if(Input.GetKey(KeyCode.S))
this.transform.Translate(Vector3.forward*Time.deltaTime*-MoveSpeed);
else if(Input.GetKey(KeyCode.A))
this.transform.Rotate(Vector3.up*Time.deltaTime*-RotateSpeed);
else if(Input.GetKey(KeyCode.D))
this.transform.Rotate(Vector3.up*Time.deltaTime*RotateSpeed);