聲明:本帖可能包含聯盟鏈接,這意味著如果您點擊鏈接併購買我們推薦的產品,我們可能會獲得佣金。點擊這些鏈接不會花費您任何費用,但可以幫助我資助我的開發項目,同時還能推薦優質資源!

2015年4月8日 星期三

Unity:UGUI 應對各種螢幕自動調整大小及位置

以前曾經發佈過兩篇有關 GUI 自動調整的文章「Unity 自動調整 GUI 縮放比例及位置」以及「Unity:應對各種螢幕比例自動調整畫面縮放及位置」,
自從 Unity 於 4.6 版發佈了新的 GUI 系統(UGUI)之後,使用 Unity 製作 UI 變得更為簡單方便,同時也比較不需要依賴第三方製作的 UI 工具了,在事件系統上也有了一些革新,UI 事件與 Component 之間變得更加視覺化,彼此間的耦合度大大降低,而使得使用上更為彈性,雖然,UGUI 解決了許多以前 UI 製作上面的問題,但實際開發時,還是有些部分需要使用者做些調整。

2015年3月9日 星期一

Unity:使用 Git 做專案版本控管

開發軟體的專案,少不了都要做版本控管這件事,而 Unity 本身也有提供相關的機制給使用者,過去需要另行購買的 Team License,現在已經包含在 Unity 5 Professional 裡面,可以讓使用者從 Unity Editor 選單列的 Window/Version Control 配合自行架設的 Server 做專案的版本控管。對於,不是使用 Unity 專業版的用戶,因為不具備有 Team License,所以在官方文件裡也提供了使用外部版本控管的方法,詳見官網文件「Using External Version Control Systems with Unity」。

2015年1月15日 星期四

解決 Dia for Mac OS X 在 Yosemite 無法開啟的問題

為了工作需求,臨時要畫流程圖才發現 Mac 作業系統內建的軟體那麼多,卻好像沒有畫流程圖專用的軟體,想起了以前使用 Windows 時使用過一個免費軟體 Dia 來畫 UML 圖,似乎也很適合畫流程圖,上網查了一下,果然是跨平台的 Open Source 軟體,但安裝過程遇到一些狀況,最後竟無法開啟,上網查找了一些資料,最後終於解決了,所以特別在此記錄下來。

2014年12月8日 星期一

Unity:使用 Render Texture 製作小地圖

在之前曾發表的文章「Unity:製作雷達小地圖」的結尾有提到過該做法的一些可能缺點,而不管面對任何需求,通常也不是只有一種做法,如果使用的 Unity 是 Pro 版的話,其實我們也可以利用 Render Texture 來製作小地圖。

2014年11月25日 星期二

Unity:製作雷達小地圖

在許多遊戲中,都會需要小地圖導引,使玩家可以在不切換畫面的情況下確認本身的位置及方向,做得精細一點的,還可以標示週遭的敵人、寶物、NPC、任務等,通常這種小地圖在 Unity 中,只需要多建立一個 Camera 並調整 Depth 以及 Viewport Rect 欄位的值,使其產生子母畫面的效果即可,但有時候為了整體畫面設計以及更舒服的視覺效果,可能需要圓形或特殊形狀的小地圖,那麼就需要一些特殊的處理。

2014年11月10日 星期一

Unity:如何搬移 Lightmapping 資料?

在 3D 遊戲中,如果不是動態光影,通常為了改善效能,會為場景 bake 出 Lightmaps,來使遊戲執行時的靜態光影不需要進行即時的光影演算,而在 Unity 中也可以很方便地為場景 Lightmapping,可是 Lightmapping 資料卻不像 GameObject 一樣做成 Prefab 就可以供任何場景重複使用,甚至提供給其他專案使用;正因為 LightmapSettings 資料是存在於個別的場景的 Scene 檔中,所以要搬移就比較沒那麼方便。

2014年11月1日 星期六

解決 Mac OS X Yosemite 的 XAMPP 無法開啟 MySQL 的問題

當 Mac 安裝 Yosemite 完成,開啟 XAMPP 後,如果想啟動 MySQL 會發現點擊 Start 按鈕之後並不如預期的啟動 MySQL,等待良久之後,狀態(Status)又會從 Starting 回復到 Stopped,此時,查看 Application log 會發現只有 Starting MySQL Database... 這樣的訊息而已,沒有其他資訊,無法看出究竟是發生什麼問題。

2014年10月11日 星期六

Unity:設計靈活的無縫場景轉換機制-實作測試

繼上次發佈的「Unity:設計靈活的無縫場景轉換機制」一文,獲得一些回應及提問,發現遺漏掉某些資訊未提及,同時,避免內容說明的不易理解,所以這次來舉例實作,並提供實作的專案檔案內容,給有興趣的人當作參考。

2014年9月23日 星期二

Unity:設計靈活的無縫場景轉換機制

剛開始學習使用 Unity 時應該會發現到,Unity 的儲存並非只有儲存專案(Save Project),較常使用到的是儲存場景(Save Scene),在整個遊戲專案的製作過程中,除非將全部的遊戲畫面都放在同一個場景中處理,否則我們將會儲存多個場景,雖然,Unity 的 Build Settings 中的 Scenes In Build 可以很方便的指定遊戲將會使用到哪幾個場景,而在我們設計的遊戲程式碼之中,也可以很方便地使用 Unity API 中的 Application.LoadLevel() 來載入場景,但這些都只是進行場景轉換的基本動作,在整個遊戲開發上,因應實際需求及考量上,很有必要另行設計一個方便變換及設定的場景轉換機制。

2014年8月10日 星期日

Unity:使用 PHP 的 Session 進行 Server 端驗證以及傳遞資料

相信曾經使用 PHP 製作過具備會員機制的互動式網頁系統的人對於 Session 都不陌生,它可以很方便的確認網頁客戶端的身份、驗證登入狀態以及傳遞資料給同一使用者於下一次請求時使用;而現今已有許多行動裝置遊戲也都具備營運方自己的會員機制以及 Server 端的遊戲邏輯應用及資料庫,以行動裝置的使用族群環境來看,似乎比較少使用所謂長連接的 socket 連線,而比較常見的是類似互動式網頁的非同步連線機制;所以,以下將解說如何使用 Unity 實現 PHP 的 Session。