ET框架-03 ET框架-Demo工程的编译与运行

学习目标:

ET框架-Demo工程的编译与运行


学习内容:

1.Unity工程代码编辑器的设置
2.服务器配置
3.运行Server.App
4.手动去编译Unity客户端代码
5.运行客户端
6.打包客户端(以及打包BUG解决)
7.运行测试


学习时间:

2022.2.19


学习产出:

1.Unity工程代码编辑器的设置

打开Edit-Preferences
ET框架-03 ET框架-Demo工程的编译与运行_第1张图片
我们将代码编辑器设置为我们之前安装的VS2022
ET框架-03 ET框架-Demo工程的编译与运行_第2张图片
在Unity下面使用VS2022打开一次项目
ET框架-03 ET框架-Demo工程的编译与运行_第3张图片

2.服务器配置

进入目录,打开Client-Server.sln
ET框架-03 ET框架-Demo工程的编译与运行_第4张图片
需要在"工具-选项-适用于Unity的工具-常规"里,把杂项里的禁止完整生成项目改为False
在这里插入图片描述
然后我们选择Client下面的Mono,右键
ET框架-03 ET框架-Demo工程的编译与运行_第5张图片
点击重新生成
ET框架-03 ET框架-Demo工程的编译与运行_第6张图片
然后我们选择解决方案,然后右键
ET框架-03 ET框架-Demo工程的编译与运行_第7张图片
我们重新生成解决方案
ET框架-03 ET框架-Demo工程的编译与运行_第8张图片
现在我们ET框架所有的源代码都被编译完成了

3.运行Server.App

点击即可运行
ET框架-03 ET框架-Demo工程的编译与运行_第9张图片
然后我们就开启了黑窗口
ET框架-03 ET框架-Demo工程的编译与运行_第10张图片
但是我们的黑窗口并没有任何的日志输出,我们并不知道是否启动成功,或者是否报错,那我们应该在哪去查看呢?
答案是,在Logs文件夹下面
这两个文件,就是我们的log文件
ET框架-03 ET框架-Demo工程的编译与运行_第11张图片
这里我们不免会好奇,为什么我们我们的日志不在控制台的黑窗口输出呢?为何要多此一举生成一个文件,每一次还得打开log文件去查看?
原因有二:

  1. 首先我们的服务器如果出现问题,exe文件崩溃,那么日志文件就会全部消失,我们根本无法去定位我们的错误在哪,这也是为什么我们需要将log文件保留下来的重要原因
  2. 我们是没办法在正式服务器程序去查看这个黑窗口

打开日志文件,发现Server启动成功
ET框架-03 ET框架-Demo工程的编译与运行_第12张图片

4.手动去编译Unity客户端代码

我们的代码并不是放在Assets文件夹下面,而是与Assets文件夹同级的Codes文件夹下面,这样做的好处就是方便热更新,我们并不需要Unity自动的去帮我们编译代码,反而,我们可以随时进行修改,然后随时进行编译,这是很方便同时也很有意义的一件事。
这也是ET框架最大的优点之一
ET框架-03 ET框架-Demo工程的编译与运行_第13张图片
在Unity–Tools–BuildCodeDebug点击
ET框架-03 ET框架-Demo工程的编译与运行_第14张图片
编译完成
ET框架-03 ET框架-Demo工程的编译与运行_第15张图片

5.运行客户端

我们打开场景Init,然后将代码Init的CodeMode从IL Runtime热更新模式变为Mono模式,来保证我们游戏运行的一个正确性
ET框架-03 ET框架-Demo工程的编译与运行_第16张图片
我们直接点击登录
ET框架-03 ET框架-Demo工程的编译与运行_第17张图片
然后进入地图
ET框架-03 ET框架-Demo工程的编译与运行_第18张图片
我们鼠标右键对应位置,小人会跟随移动
ET框架-03 ET框架-Demo工程的编译与运行_第19张图片
如果出现了全部爆红的情况,可能是材质丢失
ET框架-03 ET框架-Demo工程的编译与运行_第20张图片

我们选择对应的物体,然后将Shader改为Unity自带的默认的Shader即可解决
ET框架-03 ET框架-Demo工程的编译与运行_第21张图片

6.打包客户端(以及打包BUG解决)

我们发现,这里只有一个小人在移动
既然是网络游戏,那是不是应该来多个小人一起才有意思呢?
好主意,那我们就去Build我们的项目

首先我们进入ProjectSettings
将其设置为窗口显示
ET框架-03 ET框架-Demo工程的编译与运行_第22张图片
然后我们进入Tools点击打包工具
ET框架-03 ET框架-Demo工程的编译与运行_第23张图片
勾选三个之后,点击打包
ET框架-03 ET框架-Demo工程的编译与运行_第24张图片
这里出现了bug
显示我们没有StreamingAssets文件夹
ET框架-03 ET框架-Demo工程的编译与运行_第25张图片
那我们就自己创建一个
ET框架-03 ET框架-Demo工程的编译与运行_第26张图片
又出现了一个bug
IL2CPP is not installed
ET框架-03 ET框架-Demo工程的编译与运行_第27张图片
这里我们进入UnityHub
添加一个模块,名为Windows Build Support(IL2CPP)ET框架-03 ET框架-Demo工程的编译与运行_第28张图片
然后我们重启项目,然后进入Tools打包

打包完成之后,我们进入Release文件夹
ET框架-03 ET框架-Demo工程的编译与运行_第29张图片
打包完成

7.运行测试

我们重新启动我们的服务器,也就是
在这里插入图片描述
然后我们打开两个以上的客户端
在这里插入图片描述
我们发现,两个客户端的玩家位置会同时进行同步
ET框架-03 ET框架-Demo工程的编译与运行_第30张图片

你可能感兴趣的:(ET框架的使用,编辑器)