【ET8】1.ET8入门-运行指南

主要学习网址

论坛地址为:https://et-framework.cn

Git地址为:GitHub - egametang/ET: Unity3D Client And C# Server Framework

官方QQ群 : 474643097

项目检出

检出项目切换到release8.0分支

GitHub地址:GitHub - egametang/ET: Unity3D Client And C# Server Framework

码云地址:(更新可能不及时,我发文章时,最新的版本是7.2的,最好用GitHub的吧)ET: ET是一个开源的游戏客户端(基于unity3d)服务端双端框架,服务端是使用C# .net core开发的分布式游戏服务端,其特点是开发效率高,性能强,双端共享逻辑代码,客户端服务端热更机制完善,同时支持可靠udp tcp websocket协议,支持服务端3D recast寻路等icon-default.png?t=N7T8https://gitee.com/egametang/ET

运行指南

打卡目录下的ET\Book\1.1运行指南.md 文件

运行步骤

  1. IDE安装

    使用Rider2023.2(更新到最新版),需要安装以下内容:

    • 安装.Net7,不要用.Net8,目前并不支持.Net8
    • 不支持VS,新人用VS搞出各种问题请不要来问我,我也没用过VS,后期搞熟了可以自己改用VS
  2. master分支必须使用Unity2021.3.29(初学者请在此版本用熟后再切换其他版本)

  3. 启动UnityHub,打开(Open) -> 选中'ET/Unity'文件夹所在目录后打开工程

  4. 打开工程后,点击Unity菜单 -> Edit -> Preferences -> External Tools 在下拉框'External ScriptEditor'中Rider,Generate .csproj files for全部不要勾选(□)

  5. 点击Unity菜单 -> Assets -> Open C# Project 启动IDE

  6. 在Project视图中选中'Assets/Resources/GlobalConfig',把AppType选择成'Demo(状态同步)'或者'LockStep(帧同步)'

  7. 打开Unity菜单 -> ET -> BuildTool,CodeMode选择Client Server,然后点击ReGenerateProjectFiles

  8. 打开ET.sln,编译整个ET.sln,注意要翻墙,否则可能nuget包下载不下来,导致编译出错

  9. Unity中双击'Assets/Scenes'目录中的Init场景,点击Play(▶)即可运行

  10. 帧同步默认是一个人匹配,如果需要多人匹配,修改LSConstValue.cs中的MatchCount即可

打包过程

  1. 点击HybridCLR -> Installer,点击安装,等待安装完成

  2. 用Rider或VS,编译好Unity.AllHotfix

  3. 点击HybridCLR -> Generate -> All

  4. 点击HybridCLR -> CopyAotDlls,这一步会把需要补充元数据的dll复制到'Assets/Bundles/AotDlls'目录

  5. 打开YooAsset菜单 -> 点击AssetBundle Builder -> 点击下拉框'Copy Buildin File Option' -> 选择'Clear And Copy All' -> 点击'构建'

  6. 打开Unity菜单 -> ET -> BuildTool 点击'BuildPackage',Windows下生成的exe在'ET/Release'里面

另:请自行研究YooAsset包管理库的使用方式(YooAsset官网),若需要升级请自行替换'ET/Unity/Packages/YooAsset'

ENABLE_DLL模式

  1. 该模式用于逻辑全热更新,还有热重载,默认就是使用该模式
  2. 在Unity菜单 -> ET -> ChangeDefines -> Remove ENABLE_DLL(关闭) 或 Add ENABLE_DLL(开启)
  3. 逻辑打成了一个Model.dllHotfix.dll,开启该模式时游戏运行是通过加载dll运行,但这样Unity Editor将无法引用逻辑代码。所以如果有Editor代码需要用到逻辑代码,可以关闭ENABLE_DLL模式
  4. 若需要体验热重载,需要在Unity菜单 -> Edit -> Preferences -> General窗口的ScriptChangesWhilePlaying 中 选择 'RecompileAfterFinishedPlaying',运行后修改Hotfix代码然后用Rider或VS编译好Unity.AllHotfix工程,再在状态同步Demo中按'R'键

注意事项:

一、常见出错原因:

  1. 中文目录
  2. Rider或VS没有更新到最新版本
  3. Rider或VS没有安装相关组件
  4. 没安装.Net7
  5. 没编译服务端所有工程
  6. Unity版本不兼容
  7. Win7用户,没有特别设置
  8. 编译过程中如果出现依赖问题,也有可能是'Unity菜单 -> Edit -> Preferences -> External Tools -> Generate .csproj files for': 当中勾选了:'Registry packages' 或 'Build-in packages', 请记得都不要勾选(□)
  9. 如果打包报错缺少"StreamingAsset",自己在 'ET/Unity/Assets' 下新建一个 StreamingAsset 文件夹即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/258123.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第二十一章,网络通信

网络协议 IP协议 IP是Internet Protocol的简称,是一种网络协议。Internet 网络采用的协议是TCP/IP协议,其全称是Transmission Control Protocol/Internet Protocol。Internet 依靠TCP/IP协议,在全球范围内实现了不同硬件结构、不同操作系统…

存储成本降71%,怪兽充电历史库迁移OceanBase

怪兽充电作为共享充电宝第一股,业务增长迅速,以至于业务架构不停地增加组件。在验证 OceanBase 可以简化架构并带来更大的业务价值后,首次尝试在历史库中使用 OceanBase 替代 MySQL,存储成本降低 71%。本文为怪兽充电运维架构部王…

如何使用eXtplorer+cpolar内网穿透搭建个人云存储实现公网访问

文章目录 1. 前言2. eXtplorer网站搭建2.1 eXtplorer下载和安装2.2 eXtplorer网页测试2.3 cpolar的安装和注册 3.本地网页发布3.1.Cpolar云端设置3.2.Cpolar本地设置 4.公网访问测试5.结语 1. 前言 通过互联网传输文件,是互联网最重要的应用之一,无论是…

【附源码】完整版,Python+Selenium+Pytest+POM自动化测试框架封装

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 1、测试框架简介 …

表单小程序作用体现在哪

表单的用途非常广泛,它是线上收集信息或用户预约/需求服务的重要方式,对商家来说如今线上平台非常多,生意开展的形式也越来越多,比如常见的预约、报名、收款、产品支付等都可以通过表单实现。 接下来啊让我们看看通过【雨科】平台…

图书馆座位预约时间冲突提示(前后端全) 前端elementUI 时间选择器只显示时和分,SQL实现时间冲突判断

背景 帮客户定制项目,要实现图书馆预约座位的功能。 功能描述如下:学生选择开始时间和结束时间,只选择小时和分钟,提交预约后,如果该时间有冲突提示学生修改预约时间。 问题 前端样式选择的是elmentUI,但…

我有才打造私域流量的知识付费小程序平台

在当今数字化时代,知识付费市场正在迅速崛起,而私域流量的概念也日益受到重视。私域流量指的是企业通过自有渠道获取的、能够自由支配的流量,这种流量具有更高的用户粘性和转化率。因此,打造一个基于私域流量的知识付费小程序平台…

东北地理所最新Nature通讯文章

作为城市的重要组织部分,城市湿地在水源供给、增湿降温、雨洪调蓄等多个方面发挥着极其重要的作用,2024年国际湿地日主题定为“湿地与人类福祉”。在此背景下,中国科学院东北地理与农业生态研究所毛德华研究员等在12月5日出版的Nature发表题为…

ULAM公链第九十六期工作总结

迈入12月,接下来就是雪花,圣诞,新年和更好的我们!愿生活不拥挤,笑容不必刻意,愿一切美好如期而至! 2023年11月01日—2023年12月01日关于ULAM这期工作汇报,我们通过技术板块&#xff…

Java项目学生管理系统一前后端环境搭建

在现代的软件开发中,学生管理系统是一个常见的应用场景。通过学生管理系统,学校能够方便地管理学生的信息、课程安排和成绩等数据。本文将介绍如何使用Java语言搭建一个学生管理系统的前后端环境,并提供一个简单的示例。 1.环境搭建 学生管…

如何给网页和代码做HTML加密?

​ 如何给网页和代码做HTML加密? 本篇文章给大家谈谈html混淆加密在线,以及HTML在线加密对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 如何给代码加密? 1、源代码加密软件推荐使用德人合科技的加密软件,…

图像的均方差和信噪比计算

图像的均方差和信噪比计算 一、均方差1、公式2、代码 二、信噪比1、公式2、代码 图像的均方差和信噪比公式及代码,代码基于opencv和C实现。 一、均方差 均方误差,英文简称:MSE,英文全称:“Mean Square Error”。 衡量…