Related Posts Plugin for WordPress, Blogger...

6-1 Photon Server By Self-Hosted

從第六章開始要介紹跟網路相關的應用,首先要來介紹PhotonServer,他是一款套裝Server引擎,提供多人即時連線、大廳、聊天室等套裝功能,有提供雲端託管服務,針對全球部署以及TCP/UDP連線等均有優化。亦支援自行開發功能並放置在自架的伺服器上,是近幾年很熱門的一款Server引擎,底層使用C++實作,腳本撰寫使用C#。Client端支援Unity、iOS、Android、Windows、Unreal、Cocos2dx、Javascript、Linux、PS4、XBox One、Corona等等。

由於Unity開發者原本就使用C#寫程式,所以使用上的學習成本較低。若比較市面上其他的Server,如Smart Fox Server、Electro Server,這兩款都使用Java撰寫,底層則以Java實作。相較之下在JVM環境中執行,肯定效能會有差別。

剩下的優點就不多做介紹了,上述的多種優點都是我選擇PhotonServer作為我的遊戲伺服器的主因。想知道更多的話就請到官網看看吧:https://www.photonengine.com/zh-TW/Photon

首先,我的規劃是製作遊戲的帳號註冊、登入、雲端存檔,然後也會嘗試做一個即時連線的功能。再來是AssetsBundle的資源下載,遊戲的熱更新,不會使用到Photon提供的套裝功能,而是用自己架設的Windows Server。

接下來,到這個網址下載SDK:https://www.photonengine.com/zh-TW/sdks
你會看到很多選項可以選,這邊選擇Server。

然後點選Server SDK On-Premises的圖示,再點選Download SDK旁邊的超連結。

下載之前會先要求你進行登入,這邊就請大家自己建立個帳號吧,不贅述了。

載下來之後會是一個EXE檔案,實際上它是一個壓縮檔,解壓縮以後會看見如下圖的目錄。

其中src-server資料夾,內部放置一些Photon功能實作的原始碼,比方說Mmo資料夾內就有放大型多人線上遊戲的Server與Client端範例的原始碼,可以從中學到很好的實作想法。

deploy資料夾則是放置部署檔案的地方。
 接著打開bin_Win64資料夾,由於我的Server安裝的是64位元系統,所以執行Win64的PhotonControl。

執行完之後,右下角會看見多出了PhotonServer的圖示,點擊左鍵開啟選單,大家可以先從License Info中看到,目前的Max Connections上限為20,代表只支援最多20個人連線。

實際上免費版的有支援到100人,可以透過這個網址看見如下圖的價格畫面:
https://www.photonengine.com/zh-TW/OnPremise/pricing

接著在最左邊的免費選項按下取得按鈕。

這邊必須要登入,然後會出現100 CCU的授權可供下載。

下載下來後是一個License檔案,請將檔案放在bin_Win64底下。

然後關閉PhotonServer再重新啟動。

這時你就會看見Max Connection數變成100了。

因為PhotonServer打開後預設是關閉的,所以接下來試著啟動PhotonServer看看吧。選擇LoadBalancing (MyCloud)/Start as application。

然後再選擇Open Logs。

這時會自動開啟一個應用程式,就可以看見Server啟動過程中的Log,最下面一行寫著Service is running.....代表啟動成功了。


留言