因為最近有很多遊戲設計系或是視覺系的孩子們需要Unity的程式教學,所以特別寫了超淺顯易懂的版本出來~
雖然可能寫得很大概,但主要是給「僅僅理解」就好的人看的!
如果有寫錯請多多包涵並且歡迎留言告知!
Unity本身的介面就請讓我先行略過,主要是講程式碼的部分與結構:
變數
變數,就是會變動的屬性。
就像是RPG遊戲內會有的HP、MP、攻擊力之類的,這些在程式內都視為變數。
在程式碼最上方可以先作「宣告」,讓整支程式都能使用;也能夠在函式內宣告,那只能在函式內使用。
JS
var TheFloat :float; // 浮點數(有小數點的數字)
var TheInt :int; //整數
var TheString :string; //文字字串
var TheVector3 :vector3; //三維座標
var TheTexture:Texture; //宣告一個貼圖
C#
float TheFloat = 1.0; // 浮點數(有小數點的數字)
int TheInt; //整數
string TheString = ""; //文字字串
函式
函式就是「作甚麼」。
JS
function 這叫作函式()
{
//實行內容
}
CS
void 這叫作函式()
{
//實行內容
}
例如我想叫他作跑跳碰--
JS
function run()
{
//寫了很多行跟跑有關的程式
}
function jump()
{
//寫了很多行跟跳有關的程式
}
只要在某個地方寫上:
run();
就會執行「跑步」, 這叫作「呼叫函式」。
可是要寫在哪裡呢?
要寫在Unity先幫你寫好的function內。
這些是Unity先幫你寫好的function:
Awake() → 當跳到這個場景就執行,通常拿來做一些變數的初始值設定。
OnEnable() → 當這個掛著這支程式的物件被打開的時候會執行。
Update() → 每一影格都會執行一次。(秒數不定)
LateUpdate() → 每一影格結束後會執行。(秒數不定)
OnDestroy() → 你要刪除物件的時候會執行。
OnDisable()→你把物件給隱藏起來看不到的時候會執行。
當然還有更多,就不一一描述了。
如果打開這個場景後就要讓他跑。
那就要寫在Start()內。
直接來寫一個簡單的程式碼吧:
JS
var Human:GameObject;
function Start()
{
run();
}
function run()
{
Human.transform.localPosition += Vector3(2f, 0, 0);
}
但是只能跑一下,應該是說僅僅只是移動一點點距離。
所以如果想讓他一直跑一直跑該怎麼辦呢?
JS
var Human:GameObject;
function Update()
{
run();
}
function run()
{
Human.transform.localPosition += Vector3(2f, 0, 0);
}
這段程式碼還可以修正的更完美,不過今天就到這裡為止囉!
沒有留言:
張貼留言
歡迎大家留言提問,我會答的都會盡力回答!
如果太久沒出現回應就是我又忘記回來看留言了TAT