ET5.0学习-1启动官方Demo

目录

 

环境配置

第一步 服务端启动

第二部 客户端启动


环境配置

window系统:Windows 10 专业版

Unity:2019.3.0f 下载地址:https://download.unitychina.cn/download_unity/27ab2135bccf/Windows64EditorInstaller/UnitySetup64.exe

.Net Core:3.1.405 下载地址:https://download.visualstudio.microsoft.com/download/pr/c5cf65f5-85ca-4ae0-9c36-a0e0a852c218/07b9418c61804efb0fb079c28b1b1c90/dotnet-sdk-3.1.405-win-x64.exe

ET框架下载地址:https://gitee.com/egametang/ET/tree/Branch_V5.0/

VS编辑器下载地址:https://visualstudio.microsoft.com/zh-hans/vs/

UnityHub2.4.3

第一步 服务端启动

下载上面并安装好

VS编辑器勾上下面两个内容

a. .net 桌面开发
b. visual studio tools for unity

使用vs2019打开ET里的Client-Server.sln,对Server.App右键---属性

选中左侧的应用程序,选中目标框架.NET Core 3.1

选中左侧的调试,选中应用程序参数修改为:--id=1 --config=../StartConfig/AllServer.txt

对Server.App右键---生成(U),日志如下

点击如下:

效果如下:代表成功!!!Congratulations!!!



第二部 客户端启动

Unity基础网上挺多的,建议先看看。

打开UnityHub,登录并激活许可证

添加ET项目中Unity

点击打开,选择升级。

选中Projects下的Assets, 右键选中Open C# Project

右键解决方案选择生成解决方案

输出如下:

换到Project中的Scenes,选中Init 双击 如下图:

点击播放按钮如下图:

恭喜你!!!!! ET5.0官方Demo 启动成功!!!!Congratulations!!!!!


--------------------------------------------------------------------------------------------------------------------------------------------------------------补充-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

修复服务器控制台没有日志输出情况!

参考地址:https://blog.csdn.net/weixin_41922691/article/details/94020473?utm_medium=distribute.pc_relevant.none-task-blog-OPENSEARCH-1.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-1.control

点击进入server文件夹打开server.sln这个解决方案

1.然后找到server.App这个项目,打开后,删了NLog.xsd 把里面的全删了

2.复制如下代码 黏贴到 \ET\Server\App\NLog.config 中 打开server.App 中的NLog.config的Xml
将如下复制下去

3.修改完成后右键点击解决方案"Server"这个几个字 右键重新生成一下

<?xml version="1.0" encoding="utf-8" ?>

<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <variable name="appType" value="" />
  <variable name="appId" value="" />
  <targets>
    <target name="all" xsi:type="File"
            fileName="${basedir}/../Logs/Log.txt"
            deleteOldFileOnStartup="false"
            layout="${longdate} ${var:appTypeFormat} ${var:appIdFormat} ${callsite:className=false:methodName=false:fileName=true:includeSourcePath=false:skipFrames=2} ${message}" />
  </targets>

  <targets>
    <target name="trace" xsi:type="File"
            openFileCacheTimeout="3600"
            ConcurrentWrites="false"
            fileName="${basedir}/../Logs/Log-${var:appType}-${var:appId}/Trace/${shortdate}.log"
            deleteOldFileOnStartup="false"
            layout="${longdate} ${var:appTypeFormat} ${var:appIdFormat} ${message} ${newline} ${stacktrace:format=Raw:topFrames=10:skipFrames=0}" />
    <target name="traceConsole" type="ColoredConsole"
            layout="${longdate} ${var:appTypeFormat} ${var:appIdFormat} ${message} ${newline} ${stacktrace:format=Raw:topFrames=10:skipFrames=0}" />
  </targets>

  <targets>
    <target name="debug" xsi:type="File"
            openFileCacheTimeout="3600"
            ConcurrentWrites="false"
            fileName="${basedir}/../Logs/Log-${var:appType}-${var:appId}/Debug/${shortdate}.log"
            deleteOldFileOnStartup="false"
            layout="${longdate} ${var:appTypeFormat} ${var:appIdFormat} ${callsite:className=false:methodName=false:fileName=true:includeSourcePath=false:skipFrames=2} ${message}" />
    <target name="debugConsole" type="ColoredConsole"
            layout="${longdate} ${var:appTypeFormat} ${var:appIdFormat} ${callsite:className=false:methodName=false:fileName=true:includeSourcePath=false:skipFrames=2} ${message}" />
  </targets>

  <targets>
    <target name="info" xsi:type="File"
            openFileCacheTimeout="3600"
            ConcurrentWrites="false"
            fileName="${basedir}/../Logs/Log-${var:appType}-${var:appId}/Info/${shortdate}.log"
            deleteOldFileOnStartup="false"
            layout="${longdate} ${var:appTypeFormat} ${var:appIdFormat} ${callsite:className=false:methodName=false:fileName=true:includeSourcePath=false:skipFrames=2} ${message}" />
    <target name="infoConsole" type="ColoredConsole"
            layout="${longdate} ${var:appTypeFormat} ${var:appIdFormat} ${callsite:className=false:methodName=false:fileName=true:includeSourcePath=false:skipFrames=2} ${message}" />
  </targets>

  <targets>
    <target name="error" xsi:type="File"
            openFileCacheTimeout="3600"
            ConcurrentWrites="false"
            fileName="${basedir}/../Logs/Log-${var:appType}-${var:appId}/Error/${shortdate}.log"
            deleteOldFileOnStartup="false"
            layout="${longdate} ${var:appTypeFormat} ${var:appIdFormat} ${message} ${newline} ${stacktrace:format=Raw:topFrames=10:skipFrames=0}" />
    <target name="errorConsole" type="ColoredConsole"
            layout="${longdate} ${var:appTypeFormat} ${var:appIdFormat} ${message} ${newline} ${stacktrace:format=Raw:topFrames=10:skipFrames=0}" />
  </targets>

  <targets>
    <target name="warn" xsi:type="File"
            openFileCacheTimeout="3600"
            ConcurrentWrites="false"
            fileName="${basedir}/../Logs/Log-${var:appType}-${var:appId}/Warning/${shortdate}.log"
            deleteOldFileOnStartup="false"
            layout="${longdate} ${var:appTypeFormat} ${var:appIdFormat} ${message}" />
    <target name="warnConsole" type="ColoredConsole"
            layout="${longdate} ${var:appTypeFormat} ${var:appIdFormat} ${message}" />
  </targets>

  <targets>
    <target name="fatal" xsi:type="File"
            openFileCacheTimeout="3600"
            ConcurrentWrites="false"
            fileName="${basedir}/../Logs/Log-${var:appType}-${var:appId}/Fatal/${shortdate}.log"
            deleteOldFileOnStartup="false"
            layout="${longdate} ${var:appTypeFormat} ${var:appIdFormat} ${message} ${newline} ${stacktrace:format=Raw:topFrames=10:skipFrames=0}" />
    <target name="fatalConsole" type="ColoredConsole"
            layout="${longdate} ${var:appTypeFormat} ${var:appIdFormat} ${message} ${newline} ${stacktrace:format=Raw:topFrames=10:skipFrames=0}" />
  </targets>

  <rules>
    <logger name="*" minlevel="Trace" writeTo="all" />
    <logger name="*" minlevel="Trace" maxlevel="Trace" writeTo="trace" />
    <logger name="*" minlevel="Trace" maxlevel="Trace" writeTo="traceConsole" />
    <logger name="*" minlevel="Debug" maxlevel="Debug" writeTo="debug" />
    <logger name="*" minlevel="Debug" maxlevel="Debug" writeTo="debugConsole" />
    <logger name="*" minlevel="Info" maxlevel="Info" writeTo="info" />
    <logger name="*" minlevel="Info" maxlevel="Info" writeTo="infoConsole" />
    <logger name="*" minlevel="Warn" maxlevel="Warn" writeTo="warn" />
    <logger name="*" minlevel="Warn" maxlevel="Warn" writeTo="warnConsole" />
    <logger name="*" minlevel="Error" maxlevel="Error" writeTo="error" />
    <logger name="*" minlevel="Error" maxlevel="Error" writeTo="errorConsole" />
    <logger name="*" minlevel="Fatal" maxlevel="Fatal" writeTo="fatal" />
    <logger name="*" minlevel="Fatal" maxlevel="Fatal" writeTo="fatalConsole" />
  </rules> 
</nlog>

猜你喜欢

转载自blog.csdn.net/qq_41179365/article/details/113525782