本项目作为KBEngine服务端引擎的客户端演示而写,适用于Unity4.x
http://www.kbengine.org
Assets\Plugins\kbengine\kbengine_unity3d_plugins\README.md
1. 确保已经下载过KBEngine服务端引擎,如果没有下载请先下载
下载服务端源码(KBEngine):
https://github.com/kbengine/kbengine/releases/latest
编译(KBEngine):
http://kbengine.github.io/docs/build.html
安装(KBEngine):
http://kbengine.github.io/docs/installation.html
2. 下载KBEngine服务端Demo资产库:
* 使用git命令行,进入到kbengine_unity3d_warring目录执行:
git submodule update --init --remote
* 或者使用 TortoiseGit(选择菜单): TortoiseGit -> Submodule Update:
* 也可以手动下载kbengine服务端Demo资产库
服务端资产库下载:
https://github.com/kbengine/kbengine_demos_assets/releases/latest
下载后请将其解压缩,并将目录文件放置于服务端引擎根目录"kbengine/"之下,如下图:
3. 拷贝服务端资产库"kbengine_demos_assets"到服务端引擎根目录"kbengine/"之下,如下图:
4. 通过服务端资产库生成KBE客户端插件(可选,默认已经带有一份,除非服务器有相关改动才需要再次生成)
1: 双击运行 kbengine/kbengine_demos_asset/gensdk.bat
2: 拷贝kbengine_unity3d_plugins到kbengine_unity3d_warring\Assets\Plugins\kbengine\
创建AssetBundles(默认已经创建,可以跳过这一步):
unity3d(菜单上)->Publish->Build Publish AssetBundles(打包所有需要动态加载资源)
期间可能一直出现"Moving file failed", 需要点击"try again"让其继续,
这可能是unity3d在移动文件时文件被占用造成的。
执行完毕后检查 Assets->StreamingAssets是否有内容。
生成服务端寻路数据(默认已经创建,可以跳过这一步):
先将Assets\Plugins\cai-nmgen-rcn(generate navmesh).zip解压放当前目录下并重启unity3d编辑器, 然后执行如下步骤:
unity3d资源浏览器中选中(非菜单): Assets->Nav_build->xinshoucun->NavmeshBuild->Build & Bake, 等待生成完成之后
unity3d资源浏览器中选中(非菜单): Assets->Nav_build->xinshoucun->CAIBakedNavmesh->Save, 将其中srv_xxx.navmesh放到服务端kbengine\kbengine_demos_assets\res\spaces\xinshoucun中
(注意: 生成完毕后建议删除cai-nmgen-rcn(generate navmesh).zip解压出来的文件,会造成无法导出游戏的错误,原因未知。)
(如果有更多问题请咨询插件作者: http://www.critterai.org/projects/cainav/)
改变登录IP地址与端口(注意:关于服务端端口部分参看http://kbengine.github.io/cn/docs/installation.html):
kbengine_unity3d_warring\Scripts\kbe_scripts\clientapp.cs -> ip
kbengine_unity3d_warring\Scripts\kbe_scripts\clientapp.cs -> port
先开启服务端
Windows:
kbengine\kbengine_demos_assets\start_server.bat
Linux:
kbengine\kbengine_demos_assets\start_server.sh
检查启动状态:
如果启动成功将会在日志中找到"Components::process(): Found all the components!"。
任何其他情况请在日志中搜索"ERROR"关键字,根据错误描述尝试解决。
(More: http://kbengine.github.io/cn/docs/startup_shutdown.html)
Unity3d File->Build Settings->Scenes In Build选择scenes/start.unity->Platform
选择Web Player->Build。
Unity3D中选择Assets\scenes\start场景然后点击编辑器运行按钮,如果无意外应该可以登录游戏进入到场景中了。
(注意:运行游戏前请确保Unity3D控制台“错误暂停”是取消状态,因为一些原因一定会遇到错误,参考:http://bbs.kbengine.org/forum.php?mod=viewthread&tid=20&extra=page%3D1)
Web服务器部署文件夹结构:
->(服务器根目录)
- StreamingAssets (创建AssetBundles生成的文件夹)
- ui (Assets下的ui文件夹可以直接拷贝过来)
- crossdomain.xml
- initLogo.png
- initProgressBar.PNG
- initProgressFrame.PNG
- index.html
- Unity3d.unity3d (在unity3d编译时生成的文件)
- Unity3d.html (在unity3d编译时生成的文件)
浏览器访问localhost
如不清楚请下载编译打包好的demo,并按照其中的文件夹结构放置并看压缩包内文档教程如何启动:
https://sourceforge.net/projects/kbengine/files/
Windows XP: C:\Documents and Settings\username\Local Settings\Temp\UnityWebPlayer\log
Windows Vista/7: C:\Users\username\AppData\Local\Temp\UnityWebPlayer\log