UnityGameFramework(UGF) 是由 Ellan Jiang 开发的一个 Unity 游戏开发框架。我决定采用它作为我最近为公司开发的一款 3D 扫雷游戏的开发框架,为此,我觉得有必要仔细阅读它的源码,并做好笔记。另外,我还建了一个仓库去写一些测试代码。
官网已经有教程教用户如何安装框架了。它推荐的安装方式是安装 Unity 插件包,其中核心部分的代码都打包成 DLL 形式了。虽然这种方法方便了用户使用,但我的目的是阅读和调试代码,我得拿到所有的代码。
下面是我的安装方法:
-
下载某一个版本(如我当前使用的是 v2019.11.09)的 UnityGameFramework,并将它拷贝到新建的 Unity 工程的
Assets
目录之中,如: - 删除
UnityGameFramework/Libraries
文件夹下的GameFramework.dll
和GameFramework.xml
文件。 -
下载某一个版本的 GameFramework,并将它的源码拷贝到 Unity 工程的
Assets
目录之中。其存放位置任意,如我就将它放进了UnityGameFramework
目录之中:然后在
GameFramework
文件夹下新建一个GameFramework.asmdef
文件:{ "name": "GameFramework", "references": [], "includePlatforms": [], "excludePlatforms": [], "allowUnsafeCode" : true }
然后让
UnityGameFramework.Runtime.asmdef
依赖GameFramework.asmdef
,让UnityGameFramework.Editor.asmdef
同时依赖GameFramework.asmdef
和UnityGameFramework.Runtime.asmdef
即可。{ "name": "UnityGameFramework.Runtime", "references": [ "GameFramework" ], "includePlatforms": [], "excludePlatforms": [] }
{ "name": "UnityGameFramework.Editor", "references": [ "UnityGameFramework.Runtime", "GameFramework" ], "includePlatforms": [ "Editor" ], "excludePlatforms": [] }
如此,整个框架就安装好了。接下来我们可以新建一个空场景 LaunchScene.unity
作为我们的游戏的启动场景,然后把框架提供的 GameFramework.prefab
拖入到场景中:
现在点击运行按钮就可以让框架代码跑起来了。