u3d开发环境搭建
1. 下载项目
从 www.kbengine.org 上下载 Demo 和 Kbengine 两个项目,建议使用 git clone 命令,以确保获取到项目的最新代码,不要下载 release 版本。例如,使用 git clone 下载了 kbengine_unity3d_warring-0.1.13 和 kbengine-master 两个程序。
2. 安装软件
2.1 安装 MySQL 和 SQLyog
下载并安装最新版本的 MySQL 和 SQLyog(数据库客户端)。安装 MySQL 时,务必记住登录账号、密码以及默认端口(通常为 3306)。由于 KBE 需要数据库对大小写敏感,需要进行如下操作:
打开 MySQL 的 my.ini 文件,在 [mysqld] 位置后添加一行:lower_case_table_names = 0。这行配置的作用是让数据库对大小写敏感。在 Linux 系统中,abc 和 Abc 被视为两个完全不同的文件,数据库也是如此;而 Windows 系统会将它们看作相同的文件。由于 KBEngine 要求数据库必须对大小写敏感,所以需要手动开启该功能。添加完成后,重启 MySQL 服务。
2.2 创建 KBE 数据库
打开 MySQL 控制台,使用以下代码(建议复制粘贴):
use mysql;
delete from user where user='';
FLUSH PRIVILEGES;
grant all privileges on *.* to kbe@'%' identified by 'kbe';
grant select,insert,update,delete,create,drop on *.* to kbe@'%' identified by 'kbe';
FLUSH PRIVILEGES;
如果你学过 SQL,应该能理解这些代码的含义。简单来说,这些代码的作用是禁止空密码登录(出于安全考虑),并创建一个名为 kbe 的用户供 KBEngine 使用。
2.3 配置数据库端口和名称
如果 MySQL 端口不是 3306 或者数据库名不是 KBE,可以有以下几种处理方式:
- 选择修改 MySQL 端口。
- 修改 KBE 数据库和 KBE 账户。
- 如果不想修改,可以在 kbengine 服务器目录下找到
kbengine_defs.xml配置文件,该文件包含了客户端访问 KBE 服务器的相关配置,在其中可以找到各种端口以及数据库名等信息,根据需要进行修改。在客户端可以看到访问的端口号。
2.4 安装 Python
下载并安装最新版本的 Python。
3. 编译服务器代码
目前,kbengine 服务器和 U3D 客户端都已准备好,MySQL 相关配置完成,Python 也已安装,但不要急于启动 U3D 进行注册和登录操作。因为下载的是 kbengine 源码,需要将其编译成第三方库(服务端底层框架使用 C++ 编写,游戏逻辑层使用 Python 支持热更新)。具体操作如下:
使用 Visual Studio 打开 /kbe/src 下的一个 .sln 文件,在加载过程中可能会遇到一些更新(版本问题),按照提示进行更新。加载完成后,会看到几个目录,注意编译顺序:
- 右键生成第一个目录,等待完成。
- 对
Libs目录进行同样的操作。
4. 启动服务器
所有加载完成后,启动服务器。点击 fixedstart.bat 启动服务器,kill.bat 用于关闭服务器。服务器启动时,会默认通过 kbe 账号访问 MySQL 并在 kbe 数据库中创建一些相关的表。如果看到瞬间弹出几个黑色的 DOS 框,这代表服务已启动,只是启动了多个服务。
5. 配置客户端
5.1 打开项目
使用 Unity3D 打开 demo 客户端项目,对于熟悉 U3D 的开发者来说,应打开 scene 文件。双击 go.unity,由于项目较大,需要等待一段时间完成加载。
5.2 解决错误
加载完成后,可能会在 Console 中看到错误信息。KBE 开发者提供了一个文件:if_Entity_error_use______git_submodule_update_____kbengine_plugins_______open_this_file_and_I_will_tell_you,打开该文件会提示下载一个 Kbengine 插件(可以直接下载,也可以使用 git clone)。下载并解压后,将文件夹下的内容复制到 kbegnine_unity3d_plugins 文件下。再次打开 U3D 项目,错误信息应该会消失。
5.3 启动 U3D 进行注册登录
启动 U3D 进行注册和登录操作。有时可能会提示“服务器正在启动”的错误,这是正常现象,因为服务器启动需要一定时间,稍作等待即可。登录成功后,即可进入场景选择角色。
5.4 处理场景中的错误
进入主场景后,Console 可能会出现很多红色错误信息。经咨询 KBE 开发者,这些错误是由于环境数目创建时动态生成并组合在一起导致的,不影响正常使用。
6. 外网访问配置
如果要实现外网访问服务器,根据不同情况进行配置:
- 如果使用路由,需要配置端口映射。
- 如果不使用路由,需要修改 IP 地址。
至此,U3D + KBE Demo 环境搭建完成,可以开始进入 Kbengine + U3d 的开发世界。