logo资料库

Unity + Photon 线上游戏开发入门.pdf

第1页 / 共93页
第2页 / 共93页
第3页 / 共93页
第4页 / 共93页
第5页 / 共93页
第6页 / 共93页
第7页 / 共93页
第8页 / 共93页
资料共93页,剩余部分请下载后查看
$1600 Unity3D + Photon 線上遊戲開發課程講議 線上遊戲開發課程講議 線上遊戲開發課程講議 線上遊戲開發課程講議 (使用使用使用使用 Unity3D 4.X + Photon Server 3.X) Unity 作者作者作者作者::::紀曲峰紀曲峰紀曲峰紀曲峰
目錄目錄目錄目錄 一 前言.......................................................................................................................... 1 1. 什麼是 Unity3D................................................................................................ 1 2. Unity3D 的版本................................................................................................. 1 3. 什麼是 Photon .................................................................................................. 2 4. 關於本教學的 Photon 版本 ............................................................................. 2 二 開發工具.................................................................................................................. 3 1. 下載及安裝 Unity3D........................................................................................ 3 2. 下載 Photon ...................................................................................................... 5 3. 解壓及安裝 Photon 授權 ................................................................................. 6 4. 啟動 Server ....................................................................................................... 8 三 Photon 入門教學 ................................................................................................... 10 1. 建立 Photon 專案 ........................................................................................... 10 (1). 建立 Visual Studio 方案 ...................................................................... 11 (2). 建立 Server 專案 ................................................................................. 11 (3). 加入參考 .............................................................................................. 12 (4). 建立 Server 端框架程式 ..................................................................... 14 (5). 建立 Client 端測試程式 ...................................................................... 22 (6). Server 端和 Client 端的訊息傳輸 ........................................................ 28 2. 測試................................................................................................................. 37 四 Unity3D 與 Photon 的連接 ................................................................................... 51 1. 建立專案......................................................................................................... 51 2. 建立 Unity for Photon 基本架構 ................................................................... 52 3. 連線到 Server ................................................................................................. 55 4. Unity 與 Server 的資料傳輸 ........................................................................... 60 五 將命令代碼變成看得懂的東西吧........................................................................ 66 1. 建立列舉命令類別......................................................................................... 66 2. 將 Server 端的命令碼換成列舉的類別 ........................................................ 72 3. 將 Client 端的命令換成列舉類別 ................................................................. 74 4. 將 Unity 的命令代碼換成列舉類別 ............................................................. 78
六 柚子星球多人聊天室原始碼說明........................................................................ 81 1. Server 架構圖 .................................................................................................. 82 2. 廣播的原理..................................................................................................... 82 3. Client 的委派與事件 ....................................................................................... 85 七 結語........................................................................................................................ 90
一一一一 前言前言前言前言 1. 什麼是什麼是什麼是什麼是 Unity3D Unity3D 是一個套裝的 3D 遊戲引擎,合理的價格加上不錯的效能,還有簡 單易用的特色,吸引了非常多的公司與獨立製作者使用這套引擎來開發遊戲,尤 其是移動平台裝置的遊戲開發,絕大部份都是使用 Unity 做為遊戲引擎,目前, Unity 已是全世界最多人使用的 3D 遊戲引擎,並且使用的領域也跨足到其他的 商業應用,已不止是用在遊戲上。 Unity3D 目標平台支援 Windows、Mac、Linux、iOS、Android、Flash 等平 台,但開發平台僅支援 Windows 和 Mac,兩個平台的專案可互通,也就是說一 個 Team 可以同時使用 Windows 和 Mac 協同開發,在國內的情形很多是使用 3D Max 進行美術工作,由於 3D Max 不支援 Mac 因此必須使用 Windows 的機器進 行開發,但若要開發 iOS 的 App 就必須使用 Mac 電腦,這時雙平台專案互通就 變得很重要了。 2. Unity3D 的版本的版本的版本的版本 本教學使用的 Unity3D 為 4.x 的版本,讀者可自行到 Unity3D 官網下載, Unity3D 有分為免費版本與收費版本,書中所有的教學及範例均可使用免費版本 的 Unity Engine,因此在學習上不會出現不能使用的問題,這也是使用 Unity 的 一個很大的好處,學習的成本很低。 Unity3D 的授權方式採用一次授權永久使用,也就是說若有需要使用專業功 能並進行購買後,無論開發幾套遊戲都不需再行付費,而且可以開發 Online Game,這一點 Unity 確實是比起其他的引擎,如 UDK 或 CDK 好得多了,上線 後也不需再給任何的授權費用。 1
3. 什麼是什麼是什麼是什麼是 Photon Photon 是一個泛用型的 Socket Server 套裝軟體,可用於多人線上遊戲、聊 天室、大廳遊戲,Client 端支援 Windows AP、Unity3D、iOS、Android、Flash 等平台。 Photon 內建一套大廳遊戲伺服器及一套 MMO 遊戲伺服器,都含有原始碼, 使用者可以拿來修改成自己所需的 Server 或直接繼承後加入自己的遊戲邏輯, 本書的內容並不教如何使用 Photon 提供的現成 Server,而是從零開始撰寫一套 屬於自己的 Game Server,看完本手冊後再去修改 Photon 內建的原始碼便能更加 的得心應手。 4. 關於本教學的 關於本教學的 Photon 版本版本版本版本 關於本教學的 關於本教學的 本教學是以 Photon 3.x 為主,Photn3.x 比起 2.x 多了非常多的功能,特性上 也比較完善,並捨棄了舊式的 Hashtable 全面改用 Dictionary 資料型態,對於資 料的處理可以統一一種型態,對開發者來說方便多了。 更多的 Photon 特色及問題可直接到 Photon 官方網站查詢 http://www.exitgames.com/ 2
二二二二 開發工具開發工具開發工具開發工具 本書會用到不少的開發工具,請讀者自行備妥或依書中指示下載。 Visual Studio 2010 以上的版本 Unity3D 4.0 以上的版本(免費版即可) Photon Server 3.0 以後的版本(開發或小型網路用免費版即可) 除此之外,電腦必須安裝好.net framework,不過這個在安裝 Visual Studio 或 Unity3D 都一定會安裝此元件,因此不需要另外下載安裝。 1. 下載及安裝 下載及安裝 Unity3D 下載及安裝 下載及安裝 通常遊戲發行前都會購買專業版本以進行特效及資源的最佳化,但在開發階 段可以直接到 Unity 官網下載免費版本安裝,若需要購買可洽尋國內代理商,好 處是可以開發票,對於公司行號來說做帳方便,且台灣的代理商服務算是蠻不錯 的,直接向國外官網刷卡購買也可以,不過只有國外的電子發票。 下載 Unity3D 只要到下面的網址 http://unity3d.com/unity/download/ 3
點選「Download Unity X.X.X」進行下載,完成後直接安裝,照著指示下一 步下一步,即可安裝完成,筆者用的是 Mac 電腦,Windows 電腦的下載及安裝 方法也是一模一樣。 安裝完成後,可以直接使用專業版 30 天試用,等到時間到了再重新啟用授 權為免費版本,若是 Windows 版本執行「Help > Manage License…」,若是 Mac 版請執行「Unity > Manage License…」,打開對話盒後執行「Activate new license」 即可重新啟用為免費版,將來若購買了專業版也是用同樣方法重新啟用為專業 版,不需要重新下載安裝。 4
2. 下載下載下載下載 Photon 先到官網「http://www.exitgames.com/」下載 Photon,若尚末註冊請先註冊 會員,請直接下載 3.0 最新版本,Client SDK 可選擇性下載,直接下載 Server SDK 會內含.net 及 Unity 的 Client DK,不過另外下載的 Client SDK 會比較新一點。 進入官網後執行選單的「Download」,這時會要求登入會員,登入後可看到 以下畫面,請在「ExitGames-Photon-Server-SDK_v3-xxxxxxxx.7z」這一項上 面直接按滑鼠右鍵選另存將 SDK 存下來,下載時數字部份可能會有所不同,若 沒有解壓軟體也可以下載副檔名「.exe」的自解壓縮檔下來執行解壓安裝。 5
分享到:
收藏