LowoUN-UI是基于unity开发环境,以UGUI为基础进行扩展的UI库,定义了强规范的UI开发流程,以及提供满足大部分当前游戏业务需求的基础设施,以实现快速开发。
PS: 强规范
- 是什么
顾名思义是指需要从事的某件事情具有非常强的约束性。 - 为什么(背景)
通常只有当某件事情已经具有非常成熟的规则与流程的情况下,针对性的对其中仍需要进行扩展的部分做出严格的规则要求。 - 有什么好处
1,在清晰的规则之下,再开发导致的错误率极大降低,系统不稳定性得以大大改善。
2,开发难度大大降低。做个类比,汽车生产流水线,每一道工序只需要关心局部的事情,所以即便经验较少的成员也可以胜任开发任务,团队得到合理配置。
特点
- View与Model完全解耦(MVVM模式)
- 文本化不同场景默认界面配置
- 清晰的层级管理并文本化层级控制
- 浏览历史记录与导航
- 支持缓存的同时多条通知显示
- 3D模型显示与交互支持
- 动画状态管理器(预制通用状态)
- 粒子特效支持
- 渲染优化
- 支持设备返回键全局回退(如Android设备)
- 支持自由拖拽
- 分辨率二级适配
- 丰富的组件样式,如UILst
- 可静态预置(已取消),可动态加载
- 可自由定位,可MxN规则排列
- 可折叠(单层与多层折叠)
- 自动高度
- 多种排列方式
- 标准的上至下,左到右
- 从下至上
- 单行/单列,可居中至两侧扩展排列
- 支持气泡剧情模块
- 支持2D剧情模块
- 支持新手指引模块
发布
AssetStore:Short URL: http://u3d.as/QXF
GitHub: https://github.com/loywong/LowoUN-UI
备注
关于Wiki的说明
虽然有诸多细节需要阐述,但是在阅读完Readme.txt,并结合Sample范例的情况下,再观摩整个框架应该是比较轻松的事情,特别在使用层面来说设计的初衷仍是简单与直观,核心也是更多的采用组合方式来达到潜层次的设计。在使用该框架的场景时,一直强调的一个观点就是,希望表达的意图通过目录与代码进行自我描述。
如果有意见或建议,请不吝给我发邮件loywongcom@gmail.com
当然,如果根据现实情况,仍有建立一份Wiki文档的必要(墨菲定理必然都会应验),那么会在后期进行公布 (lowoun-ui/wiki)。
框架目录简介
以下内容可以略过,因为纯粹只是描述目录与文件的作用。不过既然写了,还是列举出来。
- Entry入口业务
- Entry.Unity 入口
- Entry 入口类
- INI 系统参数配置文本,包括全局资源
- UI业务
- 美术资源
- INI资源配置文本
- 脚本
- UILogic UI业务系统入口
- UIHandler UI大类与具体模板类型定义
- Tmpl 所有界面模板,每一个模块对应一个Handler(负责交互)和一个Binder(负责数据)
- UI框架主体
- 核心
- Core 核心
- Util 各种功能
- Visual 面板/组件
- 辅助
- Editor 面板制作扩展辅助
- Anim 动画相关功能类
- Tmpl 基础面板模板
- 帮助
- Helper 组件示例和代码Snippet
- 核心
- 模块与功能类库
- LowoUN框架提供
- 两个必要模块
- Asset 资源加载模块
- Camera 相机模块:为与世界对象关联的屏幕UI(HudUI)提供一个主相机
- 若干功能类
- TimeWatcher 通用计时器,在非MonoBehaviour派生类很好的替代Coroutine
- Maths 数学公式
- Extensions 数据结构扩展
- EnumParse 枚举解析
- CRC32 哈希key提供
- DataStruct 自定义通用数据结构,如元组类型
- NotifyMgr 消息广播
- Log日志输出
- Interface 通用接口
- 两个必要模块
- 第三方插件
- Webview,以支持webview类型的组件(嵌入到面板的相应位置并设置显示区域大小)
- LowoUN框架提供