Simple! Easy! Professional! This‘s a powerful Unity3d game workflow!
BDFramework的设计理念永远是:工业化、流水线化、专业化!
永远致力于打造高效的商业游戏工作流.BDFramework大部分功能开发都是围绕一整条工作流,以Pipeline的形式放出.
如:BuildPipeline、PublishPipeline、DevOps 等...
对于第三方库使用也都是为了Pipeline深度定制,很多时候为了一些使用体验优化会编写大量的Editor编码.这也是BDFramework的设计理念之一:能编辑器解决的,就不要业务层解决!能自动化的,就不要手动!
BDFramework没有什么看上去很酷炫的功能,大都是一点一滴的积累,一点点的增加自动化,一点点的增加业务编码的体验.
也正是因为有这样的坚持,才会有这套框架的出现.最后因为一些原因,只能放出一些游戏基础方案Pipeline的实现,
不会有对具体业务逻辑的解决方案,所以整套workflow更像是一套游戏开发脚手架.望理解!其实BDFramework更想做的事是抛砖引玉!
by 奶泡泡.
第九第十艺术交流:763141410 (QQ Group:763141410) 点击加群
If you find a bug or have some suggestions,please make issue! I'll get back to you!
任何问题直接提issue,24小时内必解决 (有时候邮件抽风,没收到,需要在群里at下我~)
github地址: https://github.com/yimengfan/BDFramework.Core
gitee地址: https://gitee.com/yimengfan/BDFramework.Core (国内比较快)
注:所有bug修复和新特性加入会先提交到Master分支。待审核期通过,稳定则会发布Release版本
九宫棋(带一套精简的技能系统):https://gitee.com/yimengfan/TheCatChess
1.全面升级为UPM管理: urp版本安装引导
C#热更(C# hotfix):
- 自定义编译服务
- 可选工程剥离(热更可以不拆工程)
- 一键打包热更DLL
- 兼容DevOps、CI、CD.
表格管理(Table Manage):
- Excel一键生成Class
- Excel生成Sqlite、Json、Xml等
- SQLite ORM工具(兼容热更)
- 自定义表格逻辑检测.
- 兼容DevOps、CI、CD.
资源管理(Assets Manage):
- 重新定制目录管理规范
- 一套API自动切换AB和Editor模式,保留Resources.load习惯.
- 可视化连线打包逻辑、0冗余打包.
- 打包逻辑纠错机制.
- 内置增量打包逻辑,防止不同机器、工程打包AB不同情况.
- 自动图集管理.
- 自动搜集Keyword.
- 可寻址加载系统.
- Assetbundle 同、异步加载验证.
- Assetbundle加载性能检测.
- Editor下可用.
- 兼容DevOps、CI、CD.
一键版本发布(Publish):
- 代码、资源、表格一键打包,版本管理自动下载.
- 内置本机AB文件服务器
- 兼容DevOps、CI、CD.
UI工作流(UFlux):
- 提供一套Flux ui管理机制(类似MVI)
- 完善的UI管理和Windows容器,可配合任意NGUI、UGUI、FairyGUI等使用
- 支持UI管理、值绑定、数据监听、数据流、状态管理等
- 支持DI依赖注入.
业务管理(Logic Manage):
- 管理器和被管理类自动注册
- 在此之上BD实现了ScreenviewManger,UIManager,EventManager...等一些管理器.使用者根据自己的需求可以实现其他的管理器.
- Editor下可用.
导航机制(Navication):
- 模块、用户Timeline等导航机制.
- 方便做模块调度、划分等逻辑...
全面定制Editor:
- 提供完整的编辑器生命周期,方便可定制、拓展.
- 完整的测试用例,保证框架的稳定.
- 所有功能全面兼容DevOps、CI、CD等工具.
- 其他大量的定制Editor,以保证使用体验...(太多了统计不过来)
有很多细枝末节的系统就不一一列举了...
Unity2018 - ObsoleteBranch
Unity2020 - TestBranch
Unity2021 - TestBranch
教程 https://www.yuque.com/naipaopao/eg6gik/xy8dm4
使用Open UPM更新框架:
Step:
- open Edit/Project Settings/Package Manager
- add a new Scoped Registry (or edit the existing OpenUPM entry)
- Name package.openupm.cn
- URL https://package.openupm.cn
- Scope(s) com.ourpalm.ilruntime 、com.popo.bdframework
- click Save (or Apply)
Then open the "Package Manger" editor windows. Switch menuitem to "My Registries ". You can see the BDFramework ,you can select the new version.
手动将框架放置在Package目录下 ps:只移动com.popo.bdframework文件夹到项目即可
@gaojiexx
@ricashao
@瞎哥
如果需要项目方案定制、企业支持,可以联系 QQ:755737878
也随时欢迎交流各种技术.
· TDD workflow, complete test cases:
what? Dare you use a framework (library) without test cases?
· DevOps workflow:
This has to wait for a while ~
One key export C# hotfix code:
In BD, ILRuntime was re-transformed without sub-projects, and a complete script compilation mechanism was written. The packaging tool automatically collected hot code for packaging.
And adapted to commonly used libraries.
One key publish:
One key publish of codes, resources, and forms, and version management is automatically downloaded
There are many other things that I think are commonly used: such as the event system, what http library, what object pool is too lazy to list
A complete resource management system, a set of APIs automatically switch between platforms:
BD abandoned the Resources directory, and retains the development habits of user Resources.
A set of APIs automatically switch, compatible with AB and Editor modes.
And there is a relatively complete AssetBundle management mechanism:
atlas management, automatic collection Shader, 0 redundant packaging
And bd has made a set of streamlined addressable, no matter your Asset under Streaming or persistent, it can automatically find and load
Perfect UI workflow(Flux like):
There is a complete set of UI workflow in BD (here we only manage the UI logic, not considering ui production), whether you are UGUI NGUI or other.
We provide a set of mechanisms for UI management, value binding, data monitoring, data flow, state management, etc.
Perfect UI workflow:
There is a complete set of UI workflow in BD (here we only manage the UI logic, not considering ui production), whether you are UGUI NGUI or other.
We provide a set of mechanisms for UI management, value binding, data monitoring, and data flow.
We expect to complete the further upgrade of the UI system in Q4 2018, hoping to create a more advanced and scientific workflow.
SQL table management:
Sqlite is used to manage forms in BD, and excel2code, excel2json, excel2sqlite and other tools are provided
Discovery business registration:
The bottom layer of BDFrame provides a set of discovery-type business registration. Without the previous various Registers, as long as you customize your own labels and managers, you can be automatically registered.
On top of this, BD implements a series of manager such as ScreenviewManger, UIManager, EventManager...etc.
This mechanism is highly extensible and customizable, and users can implement other managers according to their own needs
And this is also effective in the editor environment~ It will be very helpful when writing tools~
Module management and scheduling:
BD brings you a development idea, the user uses the timeline of the process (not the timeline of unity),
Divide the module and schedule according to the user process.The module here is not a narrow window~
There are many other things that I think are commonly used: such as the event system, what http library, what object pool is too lazy to list