yhh
|
ad96edfad0
|
fix: 恢复 @esengine/ecs-framework 包名
上一个提交错误地将 npm 包名也改了,这里恢复正确的包名。
只更新 GitHub 仓库 URL,不改变 npm 包名。
|
2025-12-08 21:26:35 +08:00 |
|
yhh
|
240b165970
|
chore: 更新仓库 URL (ecs-framework → esengine)
仓库已从 esengine/ecs-framework 重命名为 esengine/esengine
更新所有引用旧 URL 的文件
|
2025-12-08 21:23:37 +08:00 |
|
YHH
|
d92c2a7b66
|
feat(asset): 增强资产管理系统和编辑器 UI (#291)
* fix(editor): 修复粒子实体创建和优化检视器
- 添加 effects 分类到右键菜单,修复粒子实体无法创建的问题
- 添加粒子效果的本地化标签
- 简化粒子组件检视器,优先显示资产文件选择
- 高级属性只在未选择资产时显示,且默认折叠
- 添加可折叠的属性分组提升用户体验
* fix(particle): 修复粒子系统在浏览器预览中的资产加载和渲染
- 添加粒子 Gizmo 支持,显示发射形状并响应 Transform 缩放/旋转
- 修复资产热重载:添加 reloadAsset() 方法和 assets:refresh 事件监听
- 修复 VectorFieldEditors 数值输入精度(step 改为 0.01)
- 修复浏览器预览中粒子资产加载失败的问题:
- 将相对路径转换为绝对路径以正确复制资产文件
- 使用原始 GUID 而非生成的 GUID 构建 asset catalog
- 初始化全局 assetManager 单例的 catalog 和 loader
- 在 GameRuntime 的 systemContext 中添加 engineIntegration
- 公开 AssetManager.initializeFromCatalog 方法供运行时使用
* feat(asset): 增强资产管理系统和编辑器 UI
主要改动:
- 添加 loaderType 字段支持显式指定加载器类型覆盖
- 添加 .particle 扩展名和类型映射
- 新增 MANAGED_ASSET_DIRECTORIES 常量和相关工具方法
- EngineService 使用全局 assetManager 并同步 AssetRegistry 数据
- 修复插件启用逻辑,defaultEnabled=true 的新插件不被旧配置禁用
- ContentBrowser 添加 GUID 管理目录指示和非托管目录警告
- AssetPickerDialog 和 AssetFileInspector UI 增强
|
2025-12-07 20:26:03 +08:00 |
|
YHH
|
3617f40309
|
feat(asset): 统一资产引用使用 GUID 替代路径 (#287)
* feat(world-streaming): 添加世界流式加载系统
实现基于区块的世界流式加载系统,支持开放世界游戏:
运行时包 (@esengine/world-streaming):
- ChunkComponent: 区块实体组件,包含坐标、边界、状态
- StreamingAnchorComponent: 流式锚点组件(玩家/摄像机)
- ChunkLoaderComponent: 流式加载配置组件
- ChunkStreamingSystem: 区块加载/卸载调度系统
- ChunkCullingSystem: 区块可见性剔除系统
- ChunkManager: 区块生命周期管理服务
- SpatialHashGrid: 空间哈希网格
- ChunkSerializer: 区块序列化
编辑器包 (@esengine/world-streaming-editor):
- ChunkVisualizer: 区块可视化覆盖层
- ChunkLoaderInspectorProvider: 区块加载器检视器
- StreamingAnchorInspectorProvider: 流式锚点检视器
- WorldStreamingPlugin: 完整插件导出
* feat(asset): 统一资产引用使用 GUID 替代路径
将所有组件的资产引用字段从路径改为 GUID:
- SpriteComponent: texture -> textureGuid, material -> materialGuid
- SpriteAnimatorComponent: AnimationFrame.texture -> textureGuid
- UIRenderComponent: texture -> textureGuid
- UIButtonComponent: normalTexture -> normalTextureGuid 等
- AudioSourceComponent: clip -> clipGuid
- ParticleSystemComponent: 已使用 textureGuid
修复 AssetRegistryService 注册问题和路径规范化,
添加渲染系统的 GUID 解析支持。
* fix(sprite-editor): 更新 material 为 materialGuid
* fix(editor-app): 更新 AnimationFrame.texture 为 textureGuid
|
2025-12-06 14:08:48 +08:00 |
|
YHH
|
3cbfa1e4cb
|
fix(editor): 修复右键菜单和粒子编辑器问题 (#286)
- 修复右键菜单被状态栏遮挡的问题
- 修复右键菜单边界检测,考虑标题栏和状态栏高度
- 调整右键菜单结构:新建文件夹 → 资源类型 → 工具操作
- 修复 Particle 插件默认未启用的问题(defaultEnabled 的新插件不被旧配置禁用)
- 修复 SizeOverLifetime 模块在预览中无效果的问题
- 移除 MaterialEditorModule 中的重复模板注册
|
2025-12-06 11:56:25 +08:00 |
|
YHH
|
3d5fcc1a55
|
feat(editor-core): 添加用户系统自动注册功能 (#283)
* feat(editor-core): 添加用户系统自动注册功能
- IUserCodeService 新增 registerSystems/unregisterSystems/getRegisteredSystems 方法
- UserCodeService 实现系统检测、实例化和场景注册逻辑
- ServiceRegistry 在预览开始时注册用户系统,停止时移除
- 热更新时自动重新加载用户系统
- 更新 System 脚本模板添加 @ECSSystem 装饰器
* feat(editor-core): 添加编辑器脚本支持(Inspector/Gizmo)
- registerEditorExtensions 实际注册用户 Inspector 和 Gizmo
- 添加 unregisterEditorExtensions 方法
- ServiceRegistry 在项目加载时编译并加载编辑器脚本
- 项目关闭时自动清理编辑器扩展
- 添加 Inspector 和 Gizmo 脚本创建模板
|
2025-12-05 18:28:11 +08:00 |
|
YHH
|
d7454e3ca4
|
feat(engine): 添加编辑器模式标志控制编辑器UI显示 (#274)
* feat(engine): 添加编辑器模式标志控制编辑器UI显示
- 在 Rust 引擎中添加 isEditor 标志,控制网格、gizmos、坐标轴指示器的显示
- 运行时模式下自动隐藏所有编辑器专用 UI
- 编辑器预览和浏览器运行时通过 setEditorMode(false) 禁用编辑器 UI
- 添加 Scene.isEditorMode 延迟组件生命周期回调,直到 begin() 调用
- 修复用户组件注册到 Core ComponentRegistry 以支持序列化
- 修复 Run in Browser 时用户组件加载问题
* fix: 复制引擎模块的类型定义文件到 dist/engine
* fix: 修复用户项目 tsconfig paths 类型定义路径
- 从 module.json 读取实际包名而不是使用目录名
- 修复 .d.ts 文件复制逻辑,支持 .mjs 扩展名
|
2025-12-04 22:43:26 +08:00 |
|
YHH
|
0d9bab910e
|
feat(editor): 实现用户脚本编译加载和自动重编译 (#273)
|
2025-12-04 19:32:51 +08:00 |
|
YHH
|
b4e7ba2abd
|
fix: 修复项目切换时运行时和系统重复初始化问题 (#267)
* feat(editor): 添加 GitHub Discussions 社区论坛功能
* chore: 更新 pnpm-lock.yaml
* chore: 删除测试图片
* refactor: 改用 Imgur 图床上传图片
* fix: 修复项目切换时运行时和系统重复初始化问题
* fix: 修复多个编辑器问题
* feat: 添加脚本编辑器配置和类型定义支持
* feat: 实现资产 .meta 文件自动生成功能
|
2025-12-04 14:04:39 +08:00 |
|
YHH
|
63f006ab62
|
feat: 添加跨平台运行时、资产系统和UI适配功能 (#256)
* feat(platform-common): 添加WASM加载器和环境检测API
* feat(rapier2d): 新增Rapier2D WASM绑定包
* feat(physics-rapier2d): 添加跨平台WASM加载器
* feat(asset-system): 添加运行时资产目录和bundle格式
* feat(asset-system-editor): 新增编辑器资产管理包
* feat(editor-core): 添加构建系统和模块管理
* feat(editor-app): 重构浏览器预览使用import maps
* feat(platform-web): 添加BrowserRuntime和资产读取
* feat(engine): 添加材质系统和着色器管理
* feat(material): 新增材质系统和着色器编辑器
* feat(tilemap): 增强tilemap编辑器和动画系统
* feat(modules): 添加module.json配置
* feat(core): 添加module.json和类型定义更新
* chore: 更新依赖和构建配置
* refactor(plugins): 更新插件模板使用ModuleManifest
* chore: 添加第三方依赖库
* chore: 移除BehaviourTree-ai和ecs-astar子模块
* docs: 更新README和文档主题样式
* fix: 修复Rust文档测试和添加rapier2d WASM绑定
* fix(tilemap-editor): 修复画布高DPI屏幕分辨率适配问题
* feat(ui): 添加UI屏幕适配系统(CanvasScaler/SafeArea)
* fix(ecs-engine-bindgen): 添加缺失的ecs-framework-math依赖
* fix: 添加缺失的包依赖修复CI构建
* fix: 修复CodeQL检测到的代码问题
* fix: 修复构建错误和缺失依赖
* fix: 修复类型检查错误
* fix(material-system): 修复tsconfig配置支持TypeScript项目引用
* fix(editor-core): 修复Rollup构建配置添加tauri external
* fix: 修复CodeQL检测到的代码问题
* fix: 修复CodeQL检测到的代码问题
|
2025-12-03 22:15:22 +08:00 |
|
YHH
|
b42a7b4e43
|
Feature/editor optimization (#251)
* refactor: 编辑器/运行时架构拆分与构建系统升级
* feat(core): 层级系统重构与UI变换矩阵修复
* refactor: 移除 ecs-components 聚合包并修复跨包组件查找问题
* fix(physics): 修复跨包组件类引用问题
* feat: 统一运行时架构与浏览器运行支持
* feat(asset): 实现浏览器运行时资产加载系统
* fix: 修复文档、CodeQL安全问题和CI类型检查错误
* fix: 修复文档、CodeQL安全问题和CI类型检查错误
* fix: 修复文档、CodeQL安全问题、CI类型检查和测试错误
* test: 补齐核心模块测试用例,修复CI构建配置
* fix: 修复测试用例中的类型错误和断言问题
* fix: 修复 turbo build:npm 任务的依赖顺序问题
* fix: 修复 CI 构建错误并优化构建性能
|
2025-12-01 22:28:51 +08:00 |
|
YHH
|
359886c72f
|
Feature/physics and tilemap enhancement (#247)
* feat(behavior-tree,tilemap): 修复编辑器连线缩放问题并增强插件系统
* feat(node-editor,blueprint): 新增通用节点编辑器和蓝图可视化脚本系统
* feat(editor,tilemap): 优化编辑器UI样式和Tilemap编辑器功能
* fix: 修复CodeQL安全警告和CI类型检查错误
* fix: 修复CodeQL安全警告和CI类型检查错误
* fix: 修复CodeQL安全警告和CI类型检查错误
|
2025-11-29 23:00:48 +08:00 |
|