“最后一戰” 源代碼如何編譯通過,並能順暢運行


說明:本系列學習源碼原名為 “最后一戰” ,一款類似於王者榮耀、dota之類的5v5實時RPG競技游戲,為方便,將其命名為 FinalBattle

開發環境:

 windows,unity3D 4.6 ,破解工具 Unity 4.x 5.x Pro Patch.exe,vs2010

 

編譯過程中遇到的問題,以及如何解決:

->客戶端

1.運行軟件的安裝

一開始試過用現有的vs2013直接打開項目,要求升級,升完后各種報錯,特別是客戶端,因為用的4.6的unity庫開發,好多底層接口已經在高版本unity中去掉或者修改了,所以要改的地方很多

,特別是該項目用到許多第三方庫,根本沒法下手,無奈,在電腦安裝了多個版本unity,vs2010,才能正常打開游戲

由於Unity4.6需要先破解才能用,到網上找了個破解軟件。。。(不再贅述,自行百度摸索)

 

   2. 直接打開 Client.sln 編譯是無法編過的,會報錯:

  error CS0227: 不安全代碼只會在使用 /unsafe 編譯的情況下出現

    解決方法: ‘解決方案資源管理器’ -> 右擊 -> 選擇 ‘屬性’ -> 選擇‘生成’ -> 選擇 ‘允許不安全代碼'

              客戶端就能編過

   3.vs2010 調試unity 

    客戶端的程序都是到處動態庫,要想實現但不調試客戶端程序,需要Visual studio 官方網站的工具

    https://marketplace.visualstudio.com/items?itemName=SebastienLebreton.VisualStudio2010ToolsforUnity

    安裝好后,重新打開unity ,選擇Assets->import package->visual studio 2010 tool ,導入安裝的軟件

    打開vs2010 ,在調試選項中即可看到Attach to Unity.

->服務端

1 默認只加載了 以下工程,網絡相關的工程需要自行加載,

    uCodeBase ,uCodenet ,需要把編譯優化選項去掉,因為默認是release 的,在進行調試的時候無法看到變量的值,具體做法:項目屬性->右鍵-.>配置屬性->C/C++ ->優化,把優化選項改成 "已禁用"

         2  工程中的項目 ucodenet 無法打斷點的問題(提示 ..未加載符號)

 將ucodenet 編譯出來的ucodenet.pdb文件,放到FinalFight\Server\Bin\x64\Release 下即可
這樣該項目對應的源碼就有編譯信息了

 數據庫相關:

 FinalFight用到了mysql,redis 兩種數據庫,安裝好mysql即可,修改一下密碼,然后運行 FinalFight\Server\Bin\x64\Release\dbsql 下 Rebuild.bat腳本,建立游戲數據庫表

注意windows下需要添加環境變量 C:\Program Files\MySQL\MySQL Server 8.0\bin 到 path


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM