CN 中文 | 🌏 English
这是一个为Unity项目设计的简易可复用系统与功能的集合。该仓库包含了即插即用的模块,可以帮助您简化Unity游戏开发流程。
如果真的要用可以用已经及其完善的FlexiArchiveSYstem
有一些例子也被添加其中(LearnAndDoPls/Systems/SaveSystem/SaveSettingsSystem/PlayerPrefsForSettings/SettingsExamples)
一个灵活的Unity设置管理系统,用于处理游戏设置并将其保存到PlayerPrefs中。功能特点包括:
- 通过ScriptableObject进行通用设置管理
- 自动序列化和持久化
- 事件驱动架构
- 支持多种设置类型(音频、图形等)
- 类型安全的设置访问
- 内置错误处理和验证
但是请不要用这个保存你的游戏数据,因为这个方式保存游戏数据(数据稍微大点)并不好。你可以用它来保存游戏的设置,比如音频、图形等设置。
一个基于MVC架构的模块化Unity对话系统。该系统通过Control-Controller,可选接口 模式和接口设计实现了高度的扩展性和维护性。功能特点包括:
- MVC架构设计,实现了逻辑、数据和视图的分离
- 基于接口的对话控制器设计(IBranchingDialogue和IVoiceDialogue)
- 支持多种对话形式:
- 线性对话:基础的顺序对话展示
- 分支对话:支持多选项分支和动态切换
- 语音对话:支持与文本同步的语音播放
- 自定义对话
- 完整的生命周期事件系统
- 打字机效果和自动播放支持
- ScriptableObject based DialogueSO数据管理
- 编辑器友好的配置界面
3. UGUI的UI系统
一个为Unity的UGUI设计的整洁、结构化的UI管理系统。功能特点包括:
- 基于视图的UI架构
- UI层级管理
- 简易的视图转换
- 视图生命周期管理
- 对话面板自动化生成
- 组件引用的自动绑定
- 完整的UI事件系统
代码由@Yuan-Zzzz编写,我修复了一些bug并添加了更多注释使其更易读。
这个项目是一个六边形网格系统,可用于在Unity游戏引擎中创建六边形地图。它提供了一组C#脚本,包括HexCell、HexCoordinates、HexGrid、HexGridHighlight、HexMesh和HexMetrics等,可以帮助开发者快速构建六边形网格地图。
主要功能点 HexCell: 定义六边形网格单元的基本属性和行为 HexCoordinates: 实现立方体坐标系统,便于六边形网格的定位和计算 HexGrid: 管理六边形网格的创建、布局和更新 HexGridHighlight: 提供网格单元的高亮和选择功能 HexMesh: 动态生成六边形网格的网格模型,支持定制外观 HexMetrics: 定义六边形几何参数和常量,确保网格一致性
5.Timer
- 一个用 C# 实现的 “定时器系统”库,用于游戏/Unity 场景中的时间管理(提交说明中提到移除了 Unity 的 .meta 文件和示例 TimerExample,文件/接口命名和实现都与 Unity 或游戏计时相关)。 主要组件(基于初始提交和后续说明): ITimerSystem / ITimerEntity 接口:定义计时系统和定时器实体的契约。 TimerEntity:定时器实体实现,用于封装单个定时器的状态和回调。 TimerSystemManager:集中管理定时器的系统,负责调度、刷新和关闭。 TimerExtensions:便捷的扩展方法,简化定时器调用和绑定。 TimerObjectPool:对象池实现,用于减少频繁分配的开销。 TimerCallback:回调封装/类型定义。 TimerExample:示例用法/演示。
一个 轻量级 Unity UI 框架示例,包括 UI 管理器、基础视图类、示例视图,以及实现了 UI 逻辑与视图分离的机制。 使用编辑器工具自动生成对应模板。 适合作为 UI 架构参考,以及小型游戏或项目的快速集成模板。
一个VFX系统,用对象池优化性能,同时方便使用
一个全面的实用工具和辅助类集合:
- 高效的对象重用系统
- 自动池扩展
- 内存管理优化
- 特别适用于频繁生成的对象:
- 投射物
- 粒子效果
- 敌人
- 可收集物品
- 单例模式实现
- 扩展方法集合
-我习惯于用来不同系统之间的解耦
这些脚本展示了一些C#的实用技能:
- GameInput - 输入处理工具
- PlayerController - 基本的玩家移动和控制
- TriggerObject - 轻松处理基于触发器的交互
视觉增强工具和着色器:
- 自定义着色器集合
- 材质工具
- 渲染优化工具
- 资产管理系统
由@Yumihoshi编写,来自原版艺术资产管理项目。
@whatevertogo 欢迎任何人指出我代码的不足之处,帮助我提高。
祝编码愉快!