ET8.1(一)简介

此系列文章逐个内容讲解ET8.1的新特性。
ET8.1 发布,带来以下新特性:

  1. 多线程多进程架构,架构更加灵活强大,多线程设计详细内容请看多线程设计课程
  2. 抽象出纤程(Fiber)的概念,类似erlang的进程,非常轻松的创建多个纤程,利用多核,仍然是单线程开发的体验
  3. 纤程调度: 主线程,线程池,每个纤程一个线程,3种调度方式
  4. Fiber间通信的Actor消息机制
  5. Entity方面,domain改成IScene,只要实现IScene接口,Entity就是domain,这样定义domain更加自由
  6. 预测回滚的帧同步实现 想详细了解可以看帧同步课程
  7. protobuf换成了memorypack,实现无gc的网络
  8. 纯C#版的kcp库,性能非常强,由sj提交
  9. 热更dll改成用ide编译,更加方便,也可以Unity编辑器上按F6进行代码编译运行
  10. sj利用source generater实现了代码自动模板功能,目前可以自动生成System类,开发者只需要定义Awake Update静态方法即可,特别方便
  11. sj开发了分析器,实现了EntitySystemOf,根据entity接口一键生成对应的system方法
  12. 客户端利用fiber实现网络独立线程(demo已实现),甚至可以把逻辑跟表现使用独立的纤程,更好的利用多核
  13. 帧同步demo直接利用纤程创建房间,更加方便
  14. 纯c#版寻路dotrecast,至此ET已经完全C#化,没有任何cpp代码了
  15. kcp跟软路由底层同时支持tcp跟websocket,当udp联不通的情况下,可以切换成tcp Websocket,并且支持运行时动态切换,玩家不掉线!
  16. 集成了sj的非托管容器库,性能爆炸

选用ET开发游戏的18个理由

  1. 多进程多线程Actor架构,客户端跟服务端都可以轻松创建纤程(fiber)利用多核,比如客户端网络一个纤程,寻路一个纤程,帧同步逻辑层一个纤程,表现层一个纤程
  2. async await协程同步代码编写,避免回调地狱
  3. 0GC消耗,超强的MemoryPack序列化, 超强的网络层性能
  4. kcp支持,网络响应非常迅速,并且闪断wifi 4g都不会导致掉线,做竞技游戏必备
  5. kcp底层可以使用tcp udp Websocket协议,当udp联不通的情况下,可以切换成tcp Websocket,并且支持运行时动态切换,玩家不掉线!
  6. 软路由防攻击设计,买些垃圾主机就可以防住黑客攻击,比买高防省钱多了,并且用户不会掉线
  7. 双端C#开发,前后端共享代码,C#本身性能极强,仅次于CPP,不需要学一些乱起八糟的语言,很多独立游戏开发者,一个人就能用ET开发mmorpg游戏
  8. 强大的编译分析器,编译器就能帮助大家写出正确的ET风格的代码
  9. 客户端hybridclr热更新支持
  10. 客户端服务端均支持运行时热重载,客户端服务端不需要关闭进程就能修改代码,大大提升了开发效率以及运营效率
  11. 完善的demo,源码带有状态同步跟预测回滚的帧同步demo
  12. 完善的机器人开发机制,机器人直接共享客户端逻辑代码,减少95%机器人开发工作量,接入ai机器人非常轻松。大规模机器人压测,轻而易举
  13. 强大的ai开发机制,比行为树更加容易
  14. 强大的单元测试开发机制,每个单元测试都是整个游戏环境,不用搞mock隔离,开发起来非常轻松
  15. 优美的程序结构,数据跟方法完全分离
  16. all in one的开发体验,开发时只需要启动unity,发布的时候又可以单独发布服务端,并且可以跨windows跟linux平台
  17. 客户端服务端数据开发期完全可视化,开启ENABLE_VIEW宏即可在Unity Hierarchy面板中看到客户端跟服务端的所有的Entity对象以及字段的内容
  18. WebGL以及微信小游戏支持,有ET8的webgl版本,开发体验跟ET8完全一致,无缝对接ET8的服务器
    ET开源地址地址:egametang/ET: Unity3D Client And C# Server Framework (github.com) qq群:474643097
相关推荐
晴空了无痕1 小时前
现代任务调度系统架构深度解析——以TaskSchedulerController为核心的弹性任务管理方案
unity·系统架构·游戏引擎
软件黑马王子9 小时前
Unity游戏制作中的C#基础(6)方法和类的知识点深度剖析
开发语言·游戏·unity·c#
不吃斋的和尚14 小时前
Unity中一个节点实现植物动态(Shader)
unity·游戏引擎
程序猿多布15 小时前
Unity 位图字体
unity
千年奇葩17 小时前
Unity shader glsl着色器特效之 模拟海面海浪效果
unity·游戏引擎·着色器
太妃糖耶19 小时前
Unity摄像机与灯光相关知识
unity·游戏引擎
007_rbq19 小时前
XUnity.AutoTranslator-Gemini——调用Google的Gemini API, 实现Unity游戏中日文文本的自动翻译
人工智能·python·游戏·机器学习·unity·github·机器翻译
万兴丶21 小时前
Unity 适用于单机游戏的红点系统(前缀树 | 数据结构 | 设计模式 | 算法 | 含源码)
数据结构·unity·设计模式·c#
软件黑马王子1 天前
Unity游戏制作中的C#基础(5)条件语句和循环语句知识点全解析
游戏·unity·c#
龚子亦1 天前
Unity结合Vuforia虚拟按键实现AR机械仿真动画效果
unity·游戏引擎·ar·数字孪生·虚拟仿真