• Stars
    star
    2,370
  • Rank 18,715 (Top 0.4 %)
  • Language
    C++
  • License
    Apache License 2.0
  • Created about 7 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Simple and powerful Unity3d game workflow! 简单、高效、高度工业化的商业级unity3d 工作流。

logo.png

作者寄语(Introduction)

Simple! Easy! Professional! This‘s a powerful Unity3d game workflow!
BDFramework的设计理念永远是:工业化、流水线化、专业化!
永远致力于打造高效的商业游戏工作流.
BDFramework大部分功能开发都是围绕一整条工作流,以Pipeline的形式放出.
如:BuildPipeline、PublishPipeline、DevOps 等...
对于第三方库使用也都是为了Pipeline深度定制,很多时候为了一些使用体验优化会编写大量的Editor编码.
这也是BDFramework的设计理念之一:
能编辑器解决的,就不要业务层解决!能自动化的,就不要手动!
BDFramework没有什么看上去很酷炫的功能,大都是一点一滴的积累,一点点的增加自动化,一点点的增加业务编码的体验.也正是因为有这样的坚持,才会有这套框架的出现.
更多的是做一些商业技术方案的分享和讨论.
因为一些特殊原因,只能放出一些游戏基建方案Pipeline的实现,
不会有对具体业务逻辑的解决方案,所以整套workflow更像是一套游戏开发脚手架.
望理解!
最后,
虽然该框架能开箱即用,但我个人建议且鼓励 :进行自己的思考,并为自己项目进行改造!
有任何疑问也欢迎讨论~

社区(Community)

在线提问、交流(Online Discussions): 点击

第十艺术交流: 点击加群

If you find a bug or have some suggestions,please make issue! I'll get back to you

任何问题直接提issue,24小时内必解决 (有时候邮件抽风,没收到,需要在群里at下我~)

安装使用(Start)

OpenUPM(强烈推荐): 链接

文档(Document)

中文 Wiki

English Wiki

视频教程(video)

博客(Blog)

发布(Publish)

开发计划

Release版本

注:所有bug修复和新特性加入会先提交到Master分支。待审核期通过,稳定则会发布Release版本

Unity3d支持(Unity3d Support )

Unity2018 - ObsoleteBranch

Unity2019 - Master (推荐)

Unity2020 - TestBranch

Unity2021 - TestBranch

版本开发流程:
=》修改、Fixed bug、新功能加入 基于Master(目前为Unity2019)
=》Merge to Unity2020 、Unity2021测试

V2.1版本:

-增加BuildPipeline!

-增加PublishPipeline!

-增加HotfixPipeline!

-全面支持DevOps工作流.

V2版本:

1.全面升级为UPM管理: urp版本安装引导

2.全面适配URP管线工作流

3.全面定制Unity Editor环境,升级编辑器操作。更便捷、人性化的开发体验

4.全面优化框架启动速度,重构部分远古代码。

5.UFlux UI工作流全面升级:更智能的值绑定、更简单的工作流、更方便的自定义扩展、DI等...

6.更全面的文档

7.商业级的Demo加入,后续会开放免费商业级项目开发教程

V1版本:

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不同情况.
  • 自动图集管理.
  • 自动搜集Shader Keyword.
  • 可寻址加载系统.
  • Assetbundle混淆机制,一定程度下防破解资源.
  • Assetbundle 同、异步加载校验.
  • Assetbundle 加载性能测试.
  • Editor下完整支持
  • 兼容DevOps、CI、CD.

一键版本发布(Publish):

  • 代码、资源、表格一键打包,版本管理自动下载.
  • 内置本机文件服务器
  • 兼容DevOps、CI、CD.

UI工作流(UFlux):

  • 提供一套Flux ui管理机制(类似MVI)
  • 完善的UI管理,可配合任意NGUI、UGUI、FairyGUI等使用
  • 完整的UI抽象:Windows、Component、State、Props...
  • 支持UI管理、值绑定、数据监听、数据流、状态管理等
  • 支持DI依赖注入.

业务管理(Logic Manage):

  • 管理器和被管理类自动注册
  • 在此之上BD实现了ScreenviewManger,UIManager,EventManager...等一些管理器.使用者根据自己的需求可以实现其他的管理器.
  • Editor下完整支持.

导航机制(Navication):

  • 模块、用户Timeline等导航机制.
  • 方便做模块调度、划分等逻辑...

全面定制Editor:

  • 提供完整的编辑器生命周期,方便可定制、拓展.
  • 完整的测试用例,保证框架的稳定.
  • 所有功能全面兼容DevOps、CI、CD等工具.
  • 其他大量的定制Editor,以保证使用体验...(太多了统计不过来)

有很多细枝末节的系统就不列举了...

项目实践流程:

image.png

贡献者名单

@gaojiexx
@ricashao
如果需要项目方案定制、企业支持,可以联系 QQ:755737878.
也随时欢迎交流各种技术.
如果您有好的修改或者拓展,也随时欢迎讨论和提PR.