# BDFramework.Core **Repository Path**: GanShuangFeng/BDFramework.Core ## Basic Information - **Project Name**: BDFramework.Core - **Description**: Simple and powerful Unity3d game workflow! 简单、高效、高度工业化的商业级unity3d 工作流。 - **Primary Language**: C# - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 46 - **Created**: 2024-04-11 - **Last Updated**: 2024-04-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ![logo.png](https://cdn.nlark.com/yuque/0/2022/png/338267/1649684734342-74b652a1-d03a-4b8a-b78b-9fe82f1c9ed8.png#clientId=uc33e9e9d-324b-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=136&id=ubbf7265c&margin=%5Bobject%20Object%5D&name=logo.png&originHeight=235&originWidth=923&originalType=binary&ratio=1&rotation=0&showTitle=false&size=28428&status=done&style=shadow&taskId=u199e20dc-ebb8-4095-9235-befea9ca47a&title=&width=532.9960632324219)
[![](https://camo.githubusercontent.com/ad53edcf98cb738e703fb694c5f465ad2f9fc58ea30287cec6e924eb9f3d9247/68747470733a2f2f696d672e736869656c64732e696f2f6e706d2f762f636f6d2e706f706f2e62646672616d65776f726b3f6c6162656c3d6f70656e75706d2672656769737472795f7572693d68747470733a2f2f7061636b6167652e6f70656e75706d2e636f6d#crop=0&crop=0&crop=1&crop=1&from=url&id=CKHaa&margin=%5Bobject%20Object%5D&originHeight=20&originWidth=106&originalType=binary&ratio=1&rotation=0&showTitle=false&status=done&style=shadow&title=)](https://openupm.cn/packages/com.popo.bdframework/) [![](https://camo.githubusercontent.com/8e53c4e75f0baf3b1cb6815fef6dc3648d0bb6b0d5fcda5a82a88b678893caf8/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d416e74692532303939362d626c75652e7376673f7374796c653d666c61742d737175617265#crop=0&crop=0&crop=1&crop=1&from=url&id=ACfdn&margin=%5Bobject%20Object%5D&originHeight=20&originWidth=104&originalType=binary&ratio=1&rotation=0&showTitle=false&status=done&style=shadow&title=)](https://github.com/996icu/996.ICU/blob/master/LICENSE) [![](https://camo.githubusercontent.com/3e8b8686464bdeeef002f8f8ff1883c5a713366d58360ab9a61dbab60a2eb1f0/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c696e6b2d3939362e6963752d2532334646344435422e7376673f7374796c653d666c61742d737175617265#crop=0&crop=0&crop=1&crop=1&from=url&id=RnsS9&margin=%5Bobject%20Object%5D&originHeight=20&originWidth=80&originalType=binary&ratio=1&rotation=0&showTitle=false&status=done&style=shadow&title=)](https://996.icu/#/zh_CN) [![](https://camo.githubusercontent.com/f42c312e343cae055acb79039d4671e3ba2c8bf22c20cc2321271d778bd57542/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f79696d656e6766616e2f42444672616d65776f726b2e436f7265#crop=0&crop=0&crop=1&crop=1&from=url&id=Wh0bY&margin=%5Bobject%20Object%5D&originHeight=20&originWidth=120&originalType=binary&ratio=1&rotation=0&showTitle=false&status=done&style=shadow&title=)](https://github.com/yimengfan/BDFramework.Core/blob/master/LICENSE) # 作者寄语(Introduction) Simple! Easy! Professional! This‘s a powerful Unity3d game workflow!
BDFramework的设计理念永远是:**工业化、流水线化、专业化!**
永远致力于打造高效的商业游戏工作流.
BDFramework大部分功能开发都是围绕一整条工作流,以**Pipeline**的形式放出.
如:**BuildPipeline、PublishPipeline、DevOps** 等...
对于第三方库使用也都是为了Pipeline深度定制,很多时候为了一些使用体验优化会编写大量的Editor编码.
这也是BDFramework的设计理念之一:
**能编辑器解决的,就不要业务层解决!能自动化的,就不要手动!**
BDFramework没有什么看上去很酷炫的功能,大都是一点一滴的积累,一点点的增加自动化,一点点的增加业务编码的体验.也正是因为有这样的坚持,才会有这套框架的出现.
更多的是做一些商业技术方案的分享和讨论.
因为一些特殊原因,只能放出一些游戏基建方案Pipeline的实现,
不会有对具体业务逻辑的解决方案,所以整套workflow更像是一套游戏开发脚手架.
望理解!
最后,
虽然该框架能开箱即用,但我个人建议且鼓励 :**进行自己的思考,并为自己项目进行改造!**
有任何疑问也欢迎讨论~ # 社区(Community) **在线discussions** [点击](https://github.com/yimengfan/BDFramework.Core/discussions) #### 第九第十艺术交流:184111890 (QQ Group:184111890) [点击加群](https://jq.qq.com/?_wv=1027&k=OSxzhgK4) 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](https://github.com/yimengfan/BDFramework.Core)
gitee地址: [https://gitee.com/yimengfan/BDFramework.Core](https://gitee.com/yimengfan/BDFramework.Core) (国内比较快) # 文档(Document) [**中文 Wiki**](https://www.yuque.com/naipaopao/eg6gik) #### [English Wiki](http://www.nekosang.com/) #### [视频教程(video)](https://www.bilibili.com/video/av78814115/) #### [博客(Blog)](https://zhuanlan.zhihu.com/c_177032018) # 发布(Publish) ### [Release版本](https://github.com/yimengfan/BDFramework.Core/releases) 注:所有bug修复和新特性加入会先提交到Master分支。待审核期通过,稳定则会发布Release版本 ### Unity3d支持(Unity3d Support ) #### Unity2018 - [ObsoleteBranch](https://github.com/yimengfan/BDFramework.Core/tree/2018.4.23LTS) #### _Unity2019 - Master_ (推荐) #### Unity2020 - [TestBranch](https://github.com/yimengfan/BDFramework.Core/tree/2020.4LTS) #### Unity2021 - [TestBranch](https://github.com/yimengfan/BDFramework.Core/tree/2021.2.13f1) 版本开发流程:
=》修改、Fixed bug、新功能加入 基于**Master(目前为Unity2019)**
=》Merge to Unity2020 、Unity2021测试 ## V2.1版本: #### -增加BuildPipeline! #### -增加PublishPipeline! #### -增加HotfixPipeline! #### -全面支持DevOps工作流. ## V2版本: #### 1.全面升级为UPM管理: [urp版本安装引导](https://www.yuque.com/naipaopao/eg6gik/xy8dm4) #### 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,以保证使用体验...(太多了统计不过来) **有很多细枝末节的系统就不列举了...** # 安装使用(Start) #### OpenUPM(强烈推荐): #### [链接](https://www.yuque.com/naipaopao/eg6gik/xy8dm4) #### Release版: **使用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](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.
[![](https://camo.githubusercontent.com/baa458f5ab7bf39c7465812d5190ca750e38d0aa034206e34e99c138d23b079c/68747470733a2f2f63646e2e6e6c61726b2e636f6d2f79757175652f302f323032312f706e672f3333383236372f313633393830393230353935322d34393231343461352d356431632d346431622d386137332d6536636332643734383262372e706e6723636c69656e7449643d7531313933303662342d366432622d342663726f703d302663726f703d302663726f703d312663726f703d312666726f6d3d7061737465266865696768743d3232362669643d756335643739656439266d617267696e3d2535426f626a6563742532304f626a656374253544266e616d653d696d6167652e706e67266f726967696e4865696768743d343532266f726967696e57696474683d343032266f726967696e616c547970653d62696e61727926726174696f3d3126726f746174696f6e3d302673686f775469746c653d66616c73652673697a653d3331393336267374617475733d646f6e65267374796c653d6e6f6e65267461736b49643d7564636166383936322d656432332d343065332d396438332d3537383437633861333766267469746c653d2677696474683d323031#crop=0&crop=0&crop=1&crop=1&from=url&id=IhWR8&margin=%5Bobject%20Object%5D&originHeight=452&originWidth=402&originalType=binary&ratio=1&rotation=0&showTitle=false&status=done&style=shadow&title=)](https://camo.githubusercontent.com/baa458f5ab7bf39c7465812d5190ca750e38d0aa034206e34e99c138d23b079c/68747470733a2f2f63646e2e6e6c61726b2e636f6d2f79757175652f302f323032312f706e672f3333383236372f313633393830393230353935322d34393231343461352d356431632d346431622d386137332d6536636332643734383262372e706e6723636c69656e7449643d7531313933303662342d366432622d342663726f703d302663726f703d302663726f703d312663726f703d312666726f6d3d7061737465266865696768743d3232362669643d756335643739656439266d617267696e3d2535426f626a6563742532304f626a656374253544266e616d653d696d6167652e706e67266f726967696e4865696768743d343532266f726967696e57696474683d343032266f726967696e616c547970653d62696e61727926726174696f3d3126726f746174696f6e3d302673686f775469746c653d66616c73652673697a653d3331393336267374617475733d646f6e65267374796c653d6e6f6e65267461736b49643d7564636166383936322d656432332d343065332d396438332d3537383437633861333766267469746c653d2677696474683d323031) #### Master版(紧急修复bug or 自行修改版): 手动将框架放置在Package目录下
![image.png](https://cdn.nlark.com/yuque/0/2022/png/338267/1652974827438-46dae355-b6f7-4a50-b068-4231c2d2bede.png#clientId=u601d31b3-c056-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=303&id=ucdfd0f6c&margin=%5Bobject%20Object%5D&name=image.png&originHeight=478&originWidth=710&originalType=binary&ratio=1&rotation=0&showTitle=false&size=22744&status=done&style=shadow&taskId=ub7cee2b7-77bc-447a-be8e-b6d2676bb46&title=&width=450.7936712655721)
ps:只移动**com.popo.bdframework文件夹**到自己项目Package目录即可 # 项目实践流程: ![image.png](https://cdn.nlark.com/yuque/0/2022/png/338267/1649685339014-bc9ded1a-4301-47b9-9c08-0a4553fa0cfe.png#clientId=u9bf72c99-cdb1-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=808&id=u88225e38&margin=%5Bobject%20Object%5D&name=image.png&originHeight=1272&originWidth=2889&originalType=binary&ratio=1&rotation=0&showTitle=true&size=179957&status=done&style=shadow&taskId=ubb1d6962-e623-407b-b35e-4fc35f226d9&title=%E5%8D%8A%E7%83%AD%E6%9B%B4&width=1834.2857975862503 "半热更") # Demo: 九宫棋(带一套精简的技能系统):[https://gitee.com/yimengfan/TheCatChess](https://gitee.com/yimengfan/TheCatChess) # 贡献者名单 [@gaojiexx](https://github.com/gaojiexx)
[@ricashao](https://github.com/ricashao)
[@瞎哥](https://github.com/AfarMiss)
如果需要项目方案定制、企业支持,可以联系 QQ:755737878
也随时欢迎交流各种技术. 如果您有好的修改或者拓展,也随时欢迎讨论和提PR.