網頁連結
Update在Unity中是最常使用的函式,遊戲執行的每一個frame都會呼叫Update,通常用來處理以下幾種動作:
沒有物理的物件移動。
簡易的計時器。
接收滑鼠、鍵盤的輸入。
另外要注意的是,每次呼叫Update的間隔時間並不相同。
FixedUpdate類似Update,但不同的是FixedUpdate會在Unity的物理階段呼叫,所以有物理性質的動作都建議在FixedUpdate中處理。
另外呼叫FixedUpdate的間隔時間每一次都會相同,開發者可以在Edit -> Project Settings -> Time中的Fixed Timestep欄位調整。
2016年8月19日 星期五
2016年8月17日 星期三
【Unity官方教學分享】Awake和Start
網頁連結
Awake和Start是在讀取腳本時優先被呼叫的函式,但它們之間還是有些許的不同。
Awake函式即使腳本沒有啟用(enable)依然會執行,適合使用在設定參照與初始化。
Start會在Awake之後,但只會在腳本為啟用狀態時呼叫,所以當腳本啟用後,需要優先執行一次的動作,就適合在Start中處理。
以下是Unity函式執行的順序,除了初始化時的Awake和Start之外,也包含其他階段函式執行的順序。
https://docs.unity3d.com/Manual/ExecutionOrder.html
Awake和Start是在讀取腳本時優先被呼叫的函式,但它們之間還是有些許的不同。
Awake函式即使腳本沒有啟用(enable)依然會執行,適合使用在設定參照與初始化。
Start會在Awake之後,但只會在腳本為啟用狀態時呼叫,所以當腳本啟用後,需要優先執行一次的動作,就適合在Start中處理。
以下是Unity函式執行的順序,除了初始化時的Awake和Start之外,也包含其他階段函式執行的順序。
https://docs.unity3d.com/Manual/ExecutionOrder.html
2016年8月16日 星期二
【Unity官方教學分享】範圍和權限修飾詞
網頁連結
在程式碼中宣告變數的位置,會決定該變數可以被使用的範圍,以下面的程式碼為例。
(2)在Example函式中宣告的變數;pens、crayons、answer,則是Example函式的區域變數,無法在該函式以外的地方存取這些變數。
在程式碼中宣告變數的位置,會決定該變數可以被使用的範圍,以下面的程式碼為例。
using UnityEngine; using System.Collections; public class ScopeAndAccessModifiers : MonoBehaviour { ////(1) public int alpha;////(3) private int beta = 0;////(4) private int gama = 5; void Example(int pens, int crayons)////(2) { int answer; answer = pens * crayons * alpha; Debug.Log(answer); } void Start(){} void Update () { Debug.Log("Alpha is set to:" + alpha); } //// }(1)這是一個名為ScopeAndAccessModifiers的類別, 在括號中所有內容都為該類別的區域(local)變數或函式。
(2)在Example函式中宣告的變數;pens、crayons、answer,則是Example函式的區域變數,無法在該函式以外的地方存取這些變數。
2016年8月12日 星期五
2016年8月11日 星期四
【Unity官方教學分享】if條件式
網頁連結
using UnityEngine; using System.Collections; public class IFStatements : MonoBehaviour { public float coffeeTemperature = 85.0f; private float hotLimitTemperature = 70.0f; private float coldLimitTemperature = 40.0f; void Update () { if (Input.GetKeyDown(KeyCode.Space)) TemperatureTest(); coffeeTemperature -= 5.0f * Time.deltaTime; } void TemperatureTest() { if (coffeeTemperature > hotLimitTemperature)////(1) { Debug.Log("Coffee is too hot."); } else if (coffeeTemperature < coldLimitTemperature)////(2) { Debug.Log("Coffee is too cold."); } else////(3) { Debug.Log("Coffee is just right."); } } }
2016年8月10日 星期三
【Unity】轉珠系統製作番外篇 - 進度報告和告知
影片中看到的就是目前進度,轉珠結束後的消珠、落珠到沒combo為止,以及交換、消除及落下的動畫。
但過程中為了bug以及追加動畫,更動了不少專案內容,下一篇可能就不會那麼快。
APK連結點這裡,可以裝來轉轉看。
這次就到這裡。
素材:
http://www.fordesigner.com/maps/3813-0.htm
http://blog.goo.ne.jp/ari1192jp_001
2016年8月9日 星期二
【Unity】轉珠系統製作Part.5 - 珠子移動和交換
2016年8月6日 星期六
【Unity】轉珠系統製作Part.4 - 珠子消除、落下和生成
2016年8月5日 星期五
【Unity】轉珠系統製作Part.3 - 珠子消除判斷與Combo建立
2016年8月3日 星期三
【Unity】轉珠系統製作Part.2 - 珠子相連判斷
2016年8月2日 星期二
【Unity】轉珠系統製作Part.1 - 產生盤面
Part.2
這次要來做轉珠遊戲中的關鍵要素─轉珠系統,全部完成可能需要六到七篇左右,第一篇就從產生盤面開始吧,下圖為這次的目標。
這次要來做轉珠遊戲中的關鍵要素─轉珠系統,全部完成可能需要六到七篇左右,第一篇就從產生盤面開始吧,下圖為這次的目標。
按下執行時,依照盤面的行列數產生相同數量的珠子,並且隨機賦予珠子屬性(不考慮消除)。
訂閱:
文章 (Atom)
【自製小遊戲】水平思考猜謎(海龜湯)
遊戲連結 海龜湯的玩法是由出題者提出一個難以理解的事件,參與猜題者可以提出任何問題以試圖縮小範圍並找出事件背後真正的原因。但出題者僅能以「是」、「不是」或「沒有關係」來回答問題。 本遊戲蒐集各種論壇、平台的42個題目,提供給想玩海龜湯卻愁找不到題目的你們。 ...
-
今天來談帶有rigidbody物件移動的方法,AddForce和velocity。 首先AddForce,是在物體上給予一個方向的外力,是這樣寫的: using UnityEngine; using System.Collections; public class Cont...
-
MMD4Mecanim的用途是把MMD格式檔案( PMX or PMD),在Unity內 轉換成FBX檔案格式的 package , 對不會建模、動畫的人來說,是個方便取得模型的工具, 本篇是照著日文教學,重新再做一遍的中文教學。 環境需求: Unity 3D遊戲引擎...