用Unity製作2D遊戲 發佈日期: 2022-11-302022-11-21 作者: yijun 文、查理 Flappy Bird Style Game是一個簡單有趣的官方原廠範例,可以讓初學者用輕鬆快速的方式,了解UNITY如何製作2D遊戲。 利用簡單的4張圖片,組成一個遊戲的基本內容。分別是:1. 角色圖片『Bird』2. 障礙物圖片『Column』3. 地板圖片『Grass』4. 背景圖片『Sky』 遊戲製作步驟,大概分成6個部分:1. 場景圖片安排,圖片碰撞感應範圍設定,圖片重力設定2. 玩家角色,彈跳高度設定,彈跳動畫設定3. 背景圖片持續橫向移動,移動方向,移動速度,無限循環設定4. 障礙物出現方式,每間隔三秒出現一組新的障礙物,無限循環5. 得分設定,美穿過一次障礙物,即可獲得一分,得分文字設定6. 玩家死亡設定,死亡動畫,遊戲結束畫面,重新遊玩設定,離開遊戲設定 以上就是遊戲的基本架構,在這基礎上,再加上其他的變化,就可以做出各種不同的遊戲。 Unity 的圖片操作方式,基本上就跟illustrator差不多,一樣是用點選的方式,直接就可以移動圖片,旋轉圖片,縮放圖片。一樣可以設定圖層,方便圖片的背景、中景、前情、主角,前後位置的安排設定。 Unity的2D圖形碰撞感應範圍,有很多個選項,有圓形、矩型跟多邊形。 通常玩家角色的造型都是不規則的,所以很適合用多邊形的感應範圍,多邊形感應範圍的設定方式就跟Photoshop的多邊形套索一樣,操作簡單,那圖片的規格該如何設定:一般的JPG圖片格式72dpi即可。 那遊戲的互動部分,需要寫程式碼麼? Unity大部分的程式指令,都是獨有的,所以對於不熟悉其他程式的人,也可以很容易上手。 初學者一開始只要掌握基本的判斷是跟迴圈,即可輕鬆製作遊戲。 那unity本身的程式指令,會很困難嗎? 以玩家角色彈跳的指令來做示範,其實程式的內容,跟我們平常講話的內容差不多。 玩家角色彈跳程式:GetComponent<Rigidbody2d>().AddForce(new Vector2(0, 200));GetComponent<>()取得(使用)這個物件的某個功能 Rigidbody2d:2D圖片的重力功能AddForce:增加(朝某個方向移動的)力量 (0,200)2個數字依序是X Y X軸代表的是左右移動,正值向右移動,負值向左移動Y軸代表的是上下移動,正值向上移動,負值向下移動 程式指令中間都會有一個點.這就很像你的、我的某個功能「的」某個屬性2D重力功能「的」增加力量最後一定都會有個結束符號「;」 整行程式碼翻譯GetComponent<Rigidbody2d>().AddForce(new Vector2(0, 200)); 使用這個物件的2d重力功能的增加力量(向上移動200像素)我們也必須要跟遊戲說這個動作要執行一次,還是要持續執行 Void Start(){ }遊戲一開始,執行一次 Void Update(){ }遊戲開始後,每一秒執行30次(預設值,也可以改成75次) 如果把剛剛的彈跳程式,放在update裡面Void Update(){GetComponent<Rigidbody2d>().AddForce(new Vector2(0, 200)); } 遊戲開始後,會持續向上移動200像素,每一秒會移動6000像素(200像素×30次)如果希望按一下滑鼠左鍵就跳一下,那我們就要再加入一個判斷式:if(條件){條件達成後要執行的內容}if(明天是晴天){明天就去海邊走走}意思就是,如果(if)明天是晴天,那明天就去海邊走走 如果想按一下滑鼠左鍵就跳一下,可以這樣寫:if(按一下滑鼠左鍵){跳一下} 按一下滑鼠左鍵的寫法:Input.GetMouseButtonDown(0) Input:輸入裝置(滑鼠或鍵盤)GetMouseButtonDown:按下滑鼠的按件(0):滑鼠的左鍵,0代表的是左鍵,1代表的是右鍵,2代表的是中鍵 整句的意思Input.GetMouseButtonDown(0)輸入裝置的滑鼠左鍵按一下 if(Input.GetMouseButtonDown(0)){ GetComponent<Rigidbody2d>().AddForce(new Vector2(0, 200)); } 完整的說法:輸入裝置的滑鼠按一下(左鍵),使用2d重力的功能,這個物件增加向上200像素的力量口語的說法:按一下,跳一下其實就是把我們平常想到的任何動作,要非常詳細的跟電腦說明,他才能夠做出你想要的內容。 通常這樣的一個小遊戲,初學者大概只要花費六次課堂的時間,就可以有一個基本的掌握。當然如果想要朝遊戲業發展或是獨立遊戲製作工作室,那就是多練習不同的遊戲範例,掌握更多的功能使用方式。目前全世界大概有一半以上的遊戲開發者,使用Unity開發遊戲。 他同時也擁有相當龐大的遊戲素材庫,包含圖片、音效、背景音樂、角色動畫、3d模型、功能程式碼。對於獨立工作者或初學者的遊戲開發,有非常大的幫助。 加入菜鳥救星官方Line並回覆「我想看文章」,不定期獲得更多知識吧! 不同頻道,不同知識! Facebook Instagram Youtube 分享此文: 分享到 X(在新視窗中開啟) X 分享到 Facebook(在新視窗中開啟) Facebook 分享到 Telegram(在新視窗中開啟) Telegram 以電子郵件將連結傳送給朋友(在新視窗中開啟) 電子郵件 請按讚:喜歡 正在載入... 相關