Skip to content

sxkane/PoolSystem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

对象池系统示例工程

这是一个基于 Unity 的对象池示例工程,除了基础对象池功能外,还包含:

  • 运行时对象池采样
  • 编辑器内曲线调试窗口
  • 可用于录屏展示的 Showcase 场景

这个仓库目前更适合作为“对象池模块 + 调试工具 + 演示样板”的基础工程,方便继续接入正式项目。

项目环境

  • Unity 6000.3.8f1
  • URP 渲染管线

功能概览

1. 对象池核心

核心代码位于 Assets/PoolSystem/Core

  • ObjectPoolManager 负责对象池创建、查找、生成和回收。

  • ObjectPool 负责活跃对象、闲置对象管理,以及扩容/缩容逻辑。

  • IPoolable 定义池内对象生命周期接口。

2. 扩容策略

扩容策略位于 Assets/PoolSystem/ExpandStrategy

  • 固定扩容
  • 指数扩容
  • 策略工厂封装

3. 运行时采样与调试数据

采样逻辑位于 Assets/PoolSystem/Debug/Runtime

  • PoolStatsService 持续收集对象池采样数据。

  • PoolStatsBuffer 保存时间序列样本。

  • PoolChartAdapter 把运行时数据转换为编辑器图表序列。

4. 编辑器调试窗口

编辑器调试逻辑位于 Assets/PoolSystem/Debug/Editor

窗口支持:

  • 单对象池模式 查看活跃数量、闲置数量、总量、负载率。

  • 多对象池模式 按单个指标比较多个对象池的趋势。

  • 设置面板 支持主题、刷新频率、Tooltip 行数、图表最小高度等配置。

  • 摘要卡片 快速查看当前关键数据。

窗口入口:

Window/Analysis/对象池曲线

编辑器模块内部结构说明见: Assets/PoolSystem/Debug/Editor/README.md

快速开始

运行示例

打开 Assets/Scenes/SampleScene.unity,进入 Play Mode

然后打开调试窗口:

Window/Analysis/对象池曲线

即可查看对象池曲线和摘要信息。

Showcase 展示

Showcase 代码位于 Assets/PoolSystem/Showcase

包含:

  • 彩色粒子对象池压力演示
  • 环绕相机
  • 霓虹风格展示逻辑

适合录制演示视频或作为求职作品展示场景。

目录结构

Assets/PoolSystem
├─ Core/                对象池核心
├─ Config/              池配置
├─ ExpandStrategy/      扩容策略
├─ Debug/
│  ├─ Runtime/          运行时采样
│  └─ Editor/           编辑器窗口、UI、服务、配置
├─ Showcase/            演示场景与视觉展示
├─ Example/             早期示例资源
└─ Resource/            调试窗口设置资源

当前实现说明

  • 编辑器窗口基于 UI Toolkit
  • 静态布局优先使用 UXML + USS
  • 动态刷新与交互逻辑放在 Controller
  • 图表绘制由自定义 PoolCurveChartView 负责

后续可扩展方向

  • 接入或替换为 XCharts
  • 增加对象池预热和资源分组
  • 增加更多调试指标
  • 增加导出调试数据能力
  • 增加自动化测试和 asmdef 拆分

说明

当前仓库更偏“可运行、可调试、可展示”的样板工程,不是已经完全工程化的最终产品。 如果接入正式项目,建议继续补足测试、文档和模块边界约束。

About

一款自用的对象池系统

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages