# YouYou-Mini-Resource
**Repository Path**: chen_junji/YouYouMini
## Basic Information
- **Project Name**: YouYou-Mini-Resource
- **Description**: YouYouFramework的简化版框架,AssetBundle改为了Resource,更加轻量化。
适合开发单机或弱联网独立游戏
- **Primary Language**: C#
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 17
- **Forks**: 9
- **Created**: 2023-04-12
- **Last Updated**: 2025-04-01
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
YouYou框架QQ交流群:185187673
YouYou框架使用教程地址:https://www.bilibili.com/video/BV1Fu411s7MV/
后端框架推荐接入:https://gitee.com/leng_yue/GameDesigner?_from=gitee_search
**简介**
------------
YouYou Mini 是一个开源的客户端(基于Unity3d)游戏框架.
相比完整版, 从Assetbundle改为了Resource, 去掉了热更新, 大幅简化了客户端框架, 更加轻量化, 适合单机或弱联网的独立游戏开发 .
**原作者: 饭饭**
**框架开源迭代: 五杀时间到了**
在最新的 YouYou Mini 版本中, 包含以下内置模块.
**GameEntry(游戏框架入口)**
------------------------------------
{
- 事件 (Event) - 观察者模式思想, YouYouFramework 中的很多模块在完成操作后会抛出内置事件,用户也可以定义自己的游戏逻辑事件。
- 定时器 (Time) - 提供了定时功能,支持多种定时需求, 如复活倒计时, 技能CD等, 用于管理游戏运行时的各种定时器。
- 有限状态机 (FSM) - 提供创建、使用和销毁有限状态机的功能。方便管理多个状态机.
- 流程 (Procedure) - 是贯穿游戏运行时整个生命周期的有限状态机。通过流程,将不同的游戏状态进行解耦将是一个非常好的习惯。对于网络游戏,你可能需要如检查资源流程、更新资源流程、检查服务器列表流程、选择服务器流程、登录服务器流程、创建角色流程等流程,而对于单机游戏,你可能需要在游戏选择菜单流程和游戏实际玩法流程之间做切换。如果想增加流程,只要派生自 ProcedureBase 类并实现自己的流程类即可使用。
- 数据表 (DataTable) - 将游戏数据以表格(Excel)的形式进行配置后,可以使用此模块读取数据表。数据表的格式是支持自定义的。
- 模型 (Model) - 基于MVC思想, 管理运行时的所有Model, 以便统一管理与释放运行时数据
- Web 请求 (Http) - 提供使用短连接的功能,可以用 Get 或者 Post 方法向服务器发送请求并获取响应数据,可指定允许几个 Web 请求器进行同时请求。
- 本地化 (Localization) - 提供本地化功能,也就是我们平时所说的多语言。支持Text和Image的本地化
- 对象池 (Pool) - 提供对象缓存池的功能,避免频繁地创建和销毁各种游戏对象,提高游戏性能。目前支持类对象池, 变量池, GameObject对象池.
- 场景 (Scene) - 提供场景管理的功能,可以同时加载多个场景,也可以随时卸载任何一个场景,从而很容易地实现场景的分部加载。
- 资源 (Loader) - 支持同步加载和UniTask异步加载, 使用了一套完整的加载资源体系。像数据表、Shader、场景、界面、角色等任何资源,都可使用Loader进行加载。 提供了默认的内存管理策略: 基于主Asset和主AB包和依赖AB包做引用计数, 并使用AssetBundle.Unload(true)释放内存。
- 界面 (UI) - 提供管理界面和界面组的功能,如 激活界面、改变界面层级 界面反切(回到上一级)等。界面使用结束后可以不立刻销毁(UI池),从而等待下一次重新使用。
- 声音 (Audio) - 提供管理声音和声音组的功能,支持全局音量调节, 音效音量单独配表
- 输入系统 (Input) - 提供了跨平台的Input封装, 支持PC(键盘鼠标)和手机(触屏)实时切换, 并实现输入方和监听方的代码解耦合。
- 本地数据存档 (PlayerPrefs) - 基于Unity官方PlayerPrefs的本地数据存档, 支持存Object对象,拥有更好的性能
- 任务 (Task) - 提供了Action委托的分组管理, 支持"顺序链式调用"和"并行调用", 在一定程度上解决了委托套娃的现象
}
**YouYouEditor(Odin可视化编辑界面)**
------------------------------------
{
>调试器 (Debugger) - 选择开启
1.可在打包APK后,出现调试器窗口,便于查看运行时日志、调试信息等
2.每次启动后会生成日志记录文本,可设置日志缓存数量,单文件最大存储数量
}