Giter Site home page Giter Site logo

jansonc / knight Goto Github PK

View Code? Open in Web Editor NEW

This project forked from winddyhe/knight

0.0 1.0 0.0 277.52 MB

Knight is a game framework based on Unity3D engine. It includes a complete assetbundle manager, a c# hotfix module based on ILRuntime, and a UI module based on MVVM, and other basic functions support.

License: MIT License

C# 99.11% HLSL 0.19% ShaderLab 0.69%

knight's Introduction

knight

支持一波996.ICU 996.icu

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

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

本框架将会持续更新,后期会不断修改和完善框架中的内容。目前使用的Unity版本为Unity2019.1.2f1。 目前Master分支中将所有的模块全部移到Packages里面去了,并使用PackageManager来管理他们,以实现使用时可随时插拔。 knight的框架结构

更新日志(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。

主要功能介绍

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

联系方式

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.