Knight是一个基于Unity5.x引擎的游戏GamePlay框架

网友投稿 841 2022-10-29

Knight是一个基于Unity5.x引擎的游戏GamePlay框架

Knight是一个基于Unity5.x引擎的游戏GamePlay框架

knight

Knight是一个基于Unity引擎的游戏GamePlay框架,提供一些简单易用的游戏框架接口,目的让开发者更加专注于游戏内容的开发。

它包含了一个完整的资源管理模块(打包、-、加载、版本管理),一个基于ILRuntime的C#热更模块,一个基于MVVM的UI框架(支持热更新)以及其他基础功能的支持。

更新日志(2019/5/13)

更新Unity版本到Unity2019.1.0f2。UI模块重构,ViewModel可以在UI模块间复用,纯数据信息在全局任意地方通过ViewModelManager访问。UI模块重构,新增DatabindingConvert转换器,可以支持BindOneWay两个不同类型变量之间的转化。UI模块重构,新增DatabindingRelated关联标签,支持ViewModel中一个变量改变了,其关联的其他变量也会随着一起更新到UI中。UI模块重构,通过Mono.Ceil静态注入的方法,让ViewModel不用再手写this.PropChanged了。UI模块重构,UI的资源加载方式变成同步加载,以避免界面闪烁。Tweening模块重构,新增多段式的补间动画类,TweeningAnimator。

更新日志(2019/3/31)

框架中所有模块完全解耦,除了Knight.Core模块是必须的公共依赖模块之外,每个模块被分成了单个的Package包,可以自己选择性的使用这些框架模块。ILRuntime更新到最新版本,支持Unity2018.3以上的版本,并且可以断点调试异步逻辑了。热更新逻辑放在Assets中进行管理,使用Unity自身进行编译并自动生成.bytes的DLL文件,无需另开vs再对热更工程进行手动编译了。Assetbundle资源管理模块,支持Editor完全无需构建Assetbundle操作就可以直接运行游戏。暂时去掉ET服务器部分,但是客户端网络模块继续保留。

运行游戏

运行菜单Tools/Assetbundle/Assetbundle Build命令,构建Assetbundle资源包,如果勾上Tools/Develope Mode和Simulate Mode的话,就可以不用该步骤。打开Assets/Game/Scene/Game.unity场景,点Play运行游戏Demo。

主要功能介绍

框架结构Assetbundle资源模块ILRuntime热更新模块WindJsonWindUICoroutine协程模块服务器集成游戏中的配置

插件(感谢以下插件和框架对knight的底层功能的支持)

ILRuntime: 一个使用C#编写的解释运行C# IL代码的库,用来实现热更新机制,地址:https://github.com/Ourpalm/ILRuntimeET: 一个包含了分布式的.Net Core服务器的双端unity游戏框架。knight用到了它的服务器部分。地址:https://github.com/egametang/ETNaughtyAttributes: 一个脚本Inspector UI扩展库,通过Attribute标签来实现的Editor扩展。地址:https://github.com/dbrizov/NaughtyAttributes

联系方式

Email: hgplan@126.comQQ群: 651543479

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:#yyds干货盘点# leetcode算法题:最后一个单词的长度
下一篇:#yyds干货盘点# 解决名企真题:小招喵跑步
相关文章

 发表评论

暂时没有评论,来抢沙发吧~