功能特性

KSFramework中包含(不限于)以下开箱即用的功能特性,大大减少你重复造轮子的时间,代码可读性高。

资源模块

  • Unity引擎的一键打包Asset Bundle
  • AssetBundle加载器,加载时自动处理依赖关系
  • 资源路径约定,自动设置abName
  • 热更新资源(下载和制作更新包)
  • 手动的、引用计数的资源释放策略
  • ~~资源运行时重载(减引用计数)~~

配置表模块

  • 提供可视化且对策划非常友好的导表工具TableML GUI
  • 自动编译Excel,支持在表中添加注释,注释行,列
  • Excel表头,可设置数据类型(如int, array的声明)
  • 自动生成配置表读取代码、Luatable、SQLite
  • 支持惰式加载,无初始化的时间消耗
  • 支持热重载,运行时修改配置表无需重启

UI模块

  • 约定优于配置式的UI框架
  • 快速导出当前编辑的UI
  • 支持热重载,运行时修改UI脚本无需重启
  • 对UGUI的SpriteAtlas管理

脚本模块

  • 支持多种热更新方案,减少集成难度
  • 路径约定,通过import函数进行加载
  • 缓存机制配合import函数,可实现所有脚本的热重载
  • Lua新增using函数类似于C#中的using,暴露使用table中的属性为全局使用
  • 可以在编辑器非运行模式下执行Lua脚本,支持简单Lua单元测试

多语言模块

  • 基于配置表模块
  • 约定好多语言字符串的机制
  • ~~多语言字符串收集器~~

Unity编辑器强化

  • UI编辑器,一键生成APK
  • 封装Unity编辑器的各种事件,如编译前、播放前、暂停时等

下载资源更新

  • 游戏启动时根据filelist下载差异文件进行代码和资源的更新
  • 生成版本差异文件的python脚本

面向人群

KSFramework是为中大型团队、多人协作而设计的,如果是小项目,使用KSFramework只会徒增您的烦恼,Unity的易用性本身就做得很好。