Commit Graph

21 Commits

Author SHA1 Message Date
ChestnutYueyue 68c3f786f6 refactor: 移除对Switch和其他平台的支持,仅保留Windows
简化构建系统,专注于Windows平台开发
删除不再需要的工具链和平台特定配置
2026-02-21 14:41:39 +08:00
ChestnutYueyue 6a12bb5e2e feat: 实现资源服务系统及测试框架
新增资源服务系统核心功能,包括资源加载、缓存管理和异步处理机制。添加测试框架支持单元测试,包含以下主要变更:

- 实现 AssetService 核心功能,支持资源同步/异步加载
- 添加 AssetCache 实现 LRU 缓存策略
- 引入测试框架,包含测试用例注册和断言机制
- 实现资源打包工具 asset_packer
- 添加压缩库支持 (Zstd/LZ4/Zlib)
- 完善文档说明资源服务系统设计

测试用例覆盖资源缓存、数据处理器、资源包管理等核心功能。文档详细说明系统架构和使用方法。
2026-02-20 22:15:01 +08:00
ChestnutYueyue f9e244299f refactor: 移除图形渲染相关代码并简化核心结构
移除图形渲染模块、着色器、纹理、字体等组件
删除过渡场景和精灵节点等场景管理功能
简化应用程序类,移除渲染和场景相关接口
更新GLFW窗口模块,移除OpenGL相关初始化
清理不再使用的头文件和实现文件
2026-02-20 16:36:31 +08:00
ChestnutYueyue b892736fb2 refactor(render): 移除多后端支持,仅保留GLFW和OpenGL
简化渲染模块和窗口模块,移除SDL2和Vulkan后端支持,仅保留GLFW窗口后端和OpenGL渲染后端。删除相关后端工厂代码和配置文件,修改模块初始化逻辑直接使用GLFW和OpenGL实现。

- 删除SDL2和Vulkan后端相关代码
- 移除后端工厂模式和相关注册逻辑
- 修改窗口模块直接使用GLFW实现
- 修改渲染模块直接使用OpenGL实现
- 更新构建配置仅支持GLFW+OpenGL组合
2026-02-20 12:48:36 +08:00
ChestnutYueyue 32e12b8c99 feat(渲染): 添加自动批处理功能并实现图片显示示例
添加自动精灵批处理功能,优化渲染性能
新增图片显示示例,展示如何使用RenderBackend抽象接口加载和显示图片
重构文本渲染示例以使用RenderBackend接口
添加flush方法用于手动控制批处理提交时机
2026-02-17 20:16:07 +08:00
ChestnutYueyue 30b677f192 feat(示例): 添加文字渲染示例并修复场景过渡方法声明
添加新的文字渲染示例 demo_text_rendering,展示如何使用 GLFontAtlas 渲染文字
修复场景过渡类中缺少 override 关键字的方法声明
更新 README 文档以包含新示例
2026-02-17 19:24:50 +08:00
ChestnutYueyue a4276e4376 feat(渲染后端): 重构渲染系统支持多后端
- 新增渲染后端工厂类,支持OpenGL和Vulkan后端
- 将OpenGL相关代码移动到backends/opengl目录
- 添加Vulkan后端占位实现
- 重构Shader系统,支持JSON元数据定义多后端Shader
- 新增shape和sprite的JSON定义及GLSL文件
- 移除旧的组合Shader文件格式
- 更新构建系统支持选择渲染后端
- 重命名相关头文件路径保持一致性
2026-02-17 14:48:04 +08:00
ChestnutYueyue 9f83b8fde5 feat(platform): 添加 GLFW 后端支持并移除 SDL2 依赖
添加 GLFW 作为可选的窗口和输入后端,支持通过配置切换 SDL2 或 GLFW 后端
移除对 SDL2 的直接依赖,重构窗口模块以支持多后端
更新构建系统和文档以反映后端选择功能
2026-02-17 00:06:31 +08:00
ChestnutYueyue b55d279611 feat(示例): 添加自定义模块示例和文档
新增HelloModule示例展示如何创建自定义模块,包含:
1. 模块配置类实现
2. 模块初始化器实现
3. 自动注册机制
4. JSON配置支持
5. 场景中使用模块的示例

同时更新模块系统文档,详细说明自定义模块开发流程
2026-02-15 17:00:39 +08:00
ChestnutYueyue 78680138c2 build: 根据平台环境配置SDL2的Wayland支持
在Linux平台下检测XDG_SESSION_TYPE环境变量,动态启用SDL2的Wayland后端支持。修改xmake.lua构建配置以适配不同显示服务器环境。
2026-02-15 15:35:26 +08:00
ChestnutYueyue 8c56c29cd2 refactor(platform): 重构平台和模块配置系统
将平台相关配置分离到独立头文件
移除AppConfig中的模块配置,改为模块自行管理
统一使用SDL2作为窗口后端
优化Switch平台支持
添加模块配置接口
重构配置加载器以支持模块配置
2026-02-15 12:36:36 +08:00
ChestnutYueyue f8ecf7e03a feat(渲染): 添加内置着色器管理和安装功能
- 移除font.shader中u_smoothing的默认值
- 添加xmake.lua中的着色器安装函数,支持不同平台
- 在渲染模块初始化时初始化ShaderManager并加载内置着色器
- 在渲染模块关闭时清理ShaderManager资源
2026-02-15 11:22:13 +08:00
ChestnutYueyue 38148a6c54 feat: 添加SDL2后端支持并实现基础示例程序
添加SDL2作为平台后端支持,包括窗口创建、输入处理和GLAD初始化
实现基础示例程序展示引擎基本功能
重构平台配置代码以提高可读性
移除未使用的input_codes.h头文件
添加demo_basic构建目标到xmake配置
2026-02-15 09:22:57 +08:00
ChestnutYueyue 9439e200d7 refactor(platform): 重构平台模块,实现多后端支持
重构平台模块,引入IWindow和IInput接口,支持SDL2和GLFW等多后端。主要变更包括:
1. 新增平台模块接口和SDL2后端实现
2. 移除旧版Window和Input类,替换为接口化设计
3. 添加后端注册机制,支持动态加载不同平台后端
4. 统一输入系统API,定义标准键盘、鼠标和手柄按键枚举
5. 更新构建系统,支持通过配置选择不同后端

同时调整相关代码以适配新接口,包括渲染器、场景管理和应用类等
2026-02-15 00:22:24 +08:00
ChestnutYueyue 387ea62853 refactor: 统一方法命名规范并优化代码文档
- 将单例方法名从getInstance统一改为get
- 重命名边界框相关方法为getBounds
- 重命名位置相关方法为setPos/getPos
- 优化代码注释,增加详细文档说明
- 移除调试信息输出
- 统一命名管理器类后缀为Mgr
- 重构节点相关方法名,如removeFromParent改为detach
- 统一坐标转换方法命名为toWorld/toLocal
2026-02-14 23:59:19 +08:00
ChestnutYueyue c6c90a7374 refactor: 移除音频系统、过渡场景和示例代码
- 删除音频引擎相关代码,包括AudioEngine和Sound类
- 移除所有过渡场景实现及基类
- 清理示例程序代码
- 简化构建配置,移除SDL2_mixer依赖
- 优化代码结构,移除不必要的资源管理代码
2026-02-14 22:37:09 +08:00
ChestnutYueyue 313a56bf72 refactor: 移除示例游戏和动画系统相关代码
移除 push_box、flappy_bird 等示例游戏代码及相关资源文件
删除动画系统相关实现文件,包括动画解析器、帧渲染器等
清理不再使用的 Action 系统代码
移除 xmake.lua 中不再需要的示例项目配置
2026-02-14 17:23:58 +08:00
ChestnutYueyue 010e48753c docs(API_Tutorial): 更新输入处理和节点系统文档
更新输入处理文档,添加Xbox手柄按键映射和游戏控制示例
重构节点系统文档,详细说明坐标系、变换系统和最佳实践
2026-02-12 21:57:41 +08:00
ChestnutYueyue 8b2482415e feat(flappy_bird): 添加Flappy Bird游戏实现
新增Flappy Bird游戏完整实现,包含以下功能:
- 游戏场景管理(启动、开始、游戏、结束场景)
- 小鸟物理效果和动画
- 水管生成和移动逻辑
- 碰撞检测和得分系统
- 音效和资源管理
- 适配Switch和PC平台

修复渲染系统问题:
- 修正精灵渲染时的纹理坐标计算
- 添加变换矩阵栈支持
- 优化节点世界变换处理

调整构建系统:
- 添加xmake构建配置
- 支持资源打包和部署
2026-02-12 21:50:21 +08:00
ChestnutYueyue 5bab53aa2a refactor(渲染): 统一处理锚点计算逻辑
将锚点计算逻辑统一交由 RenderBackend 处理,简化各渲染组件的代码
添加窗口高级配置选项,支持自定义光标和DPI缩放
更新窗口初始化逻辑,使用配置中的宽高参数
2026-02-12 14:29:50 +08:00
ChestnutYueyue f299d9e765 Initial commit 2026-02-11 19:40:26 +08:00