Commit Graph

39 Commits

Author SHA1 Message Date
fd0b19fd11 Document editor architecture finish state 2026-03-27 12:35:05 +08:00
4afe2f88ba Expand editor regression coverage 2026-03-27 12:18:40 +08:00
4b9a63098e Refine editor action shell and add regression tests 2026-03-27 12:06:24 +08:00
c97510ed5b Extract hierarchy and project drag semantics 2026-03-27 00:30:11 +08:00
6ec5f05601 Refactor main menu action shell 2026-03-27 00:15:38 +08:00
3ebad63874 Unify inspector and console panel actions 2026-03-27 00:08:46 +08:00
31675e00c8 Refactor editor shell host layers 2026-03-26 23:52:05 +08:00
f87bc53875 Extract editor edit action router 2026-03-26 22:31:22 +08:00
5735e769b0 Route editor actions by active target 2026-03-26 22:10:43 +08:00
f6286d432c Extract editor interaction states 2026-03-26 21:30:46 +08:00
6467d87b81 Refactor editor UI architecture 2026-03-26 21:18:33 +08:00
7a814c724d docs: add C# scripting design and editor issues 2026-03-26 17:23:30 +08:00
16e2065c6c Unified logging: Replace LogSystem with EditorConsoleSink
- Created EditorConsoleSink (implements ILogSink interface)
- EditorConsoleSink stores logs in memory buffer (max 1000 entries)
- Added to Debug::Logger in Application::Initialize()
- ConsolePanel now reads from EditorConsoleSink via static GetInstance()
- Removed separate LogSystem singleton
- Removed editor/src/Core/LogEntry.h (no longer needed)

Now Editor and Engine share the same Debug::Logger, with ConsolePanel
displaying logs via EditorConsoleSink.
2026-03-25 16:13:02 +08:00
600892bbe2 Refactor RHI documentation and remove unused files 2026-03-25 01:31:09 +08:00
9fae910854 Editor: 更新编辑器面板和UI控件系统
- 添加新的UI控件系统(Core.h, ScalarControls.h, VectorControls.h, UI.h)
- 更新SceneManager支持场景层级管理
- 优化SelectionManager选择管理
- 改进InspectorPanel/GameViewPanel/HierarchyPanel等面板
- 更新RHI文档说明Vulkan实现计划
2026-03-24 20:02:38 +08:00
6ed033890a docs: 整理 plan 文档,废弃文档移至 used 目录
- 废弃的计划文档移动到 docs/plan/used/
- 更新 RHI 抽象层设计文档
- 保留当前有效的计划文档
2026-03-24 18:21:53 +08:00
612342d170 docs: 更正 Editor 设计文档中的 Component 系统描述
- 更正: Engine 核心已有完整组件系统,Editor Inspector 只是未完善
- 补充: Editor 和 Engine 使用两套不同的 GameObject/Component 系统 (重大架构问题)
- 补充: Scene 序列化依赖描述修正
- 补充: 架构问题中新增 Editor/Engine 系统差异分析
2026-03-24 18:20:10 +08:00
4daed24a05 docs: 添加 Editor 设计与实现分析文档
- 对比分析 XCEngine Editor 与 Fermion Boson Editor 各面板功能
- 详细列出缺失的面板: SettingsPanel, OverlayRenderPanel, MaterialEditorPanel, TextureConfigPanel, AssetManagerPanel
- 分析核心系统差异: Application 架构、SceneManager、UI 控件封装、选择系统、资源系统
- 制定改进计划分阶段实施路线
2026-03-24 18:15:03 +08:00
0dde7234b7 refactor(RHI): remove void* from CommandList interfaces and fix OpenGL MRT bug
- Remove void* parameters from RHICommandList abstract interface
- TransitionBarrier, SetVertexBuffer, SetIndexBuffer, SetRenderTargets,
  ClearRenderTarget, ClearDepthStencil, CopyResource now use RHIResourceView*
- SetPipelineState now uses RHIPipelineState* instead of void*
- Simplified SetVertexBuffer to 3 params, SetIndexBuffer to 2 params
- Add internal D3D12 APIs for native type support (low-level escape hatch)
- Fix OpenGL SetRenderTargets to call glDrawBuffers for MRT support
- Update tests to match new interface signatures

All 289 RHI tests pass (158 unit + 64 OpenGL backend + 58 D3D12 backend + 8 integration + 1 disabled)
2026-03-24 17:20:51 +08:00
ac5c98584a refactor: rename ui_editor to editor for consistency 2026-03-24 16:23:04 +08:00
512161bf81 docs: Fix markdown formatting in RHIFence.md 2026-03-24 02:29:52 +08:00
08c01dd143 RHI: Refactor Fence module to pure timeline semantics
- Remove IsSignaled() from RHIFence interface (semantic inconsistency)
- Remove Reset() from OpenGL implementation (no D3D12 counterpart)
- OpenGL Fence now uses single GLsync + CPU counters for timeline simulation
- OpenGL Fence Initialize() now accepts uint64_t initialValue (was bool)
- Add comprehensive timeline semantics tests for all backends:
  - Signal increment/decrement scenarios
  - Multiple signals
  - Wait smaller than completed value
  - GetCompletedValue stages verification
- Update documentation to reflect actual implementation
2026-03-24 01:53:00 +08:00
36d3decef6 feat: 添加独立的输入系统和平台抽象层
- 新增 Platform 模块:PlatformTypes.h, Window.h, WindowsWindow
- 新增 Input 模块:InputTypes, InputEvent, InputAxis, InputModule, InputManager
- 新增 WindowsInputModule 处理 Win32 消息转换
- 将 RHI 集成测试从 render_model 迁移到 sphere
- 更新 CMakeLists.txt 添加 Platform 和 Input 模块
2026-03-22 15:21:52 +08:00
a172d75e36 Add Music fluctuations project and Chinese plan docs 2026-03-21 15:55:54 +08:00
810b0861c5 Docs: Add audio module architecture design document
- Add XCEngine音频模块架构设计.md
- Design audio system following Unity-style architecture
- Include AudioSourceComponent, AudioListenerComponent, AudioClip, AudioMixer
- Document DSP effect system (FFT, Reverb, EQ, Compressor)
- Document 3D spatial audio with HRTF support
- Define IAudioBackend abstraction layer with WASAPI/OpenAL backends
- Outline 5-phase implementation priorities
2026-03-20 19:59:06 +08:00
05a57addc7 Docs: Update UI-Editor GameObject system analysis 2026-03-20 19:43:24 +08:00
f1ad13430b Docs: Add UI-Editor design and implementation doc 2026-03-20 19:06:20 +08:00
761552273b Docs: Add UI-Editor design documents 2026-03-20 19:06:11 +08:00
d0e16962c8 docs: update README and project docs to reflect game engine scope 2026-03-18 17:58:01 +08:00
9bad996ecf refactor: reorganize docs into plan/ and add skills/ 2026-03-18 17:49:22 +08:00
af718279ff feat(RHI): 实现 RHIFence 抽象基类
- 新增 RHIFence 抽象基类
- D3D12Fence 继承 RHIFence
- OpenGLFence 继承 RHIFence
- 文档更新 RHIFence 差异处理策略
2026-03-17 17:36:17 +08:00
f046e17ad6 feat(RHI): 实现 RHISampler 抽象基类
- 新增 RHISampler 抽象基类
- D3D12Sampler 继承 RHISampler
- OpenGLSampler 继承 RHISampler,使用 OpenGLSamplerDesc
- 文档更新 RHISampler 差异处理策略
2026-03-17 17:31:32 +08:00
e38d5ccede feat(RHI): 实现 RHIBuffer, RHITexture, RHIShader 抽象基类
- 新增 RHIBuffer, RHITexture, RHIShader 抽象基类
- D3D12Buffer/Texture/Shader 继承抽象基类
- OpenGLBuffer/Texture/Shader 继承抽象基类
- 添加 RHICapabilities, RHIDevice 头文件
- RHIEnums 添加 Fragment/TessControl/TessEvaluation
- 文档更新差异处理策略
2026-03-17 17:26:41 +08:00
2b3ac27243 Add OpenGL backend project and third phase plan 2026-03-16 13:18:53 +08:00
b2c7627a1b docs: 更新第二阶段计划,反映实际目录结构和已完成任务 2026-03-15 02:27:05 +08:00
f427eb2588 refactor: 删除旧的RHI实现,添加D3D12测试用例和第二阶段计划 2026-03-15 01:58:30 +08:00
d8882ab93f refactor: 移除HelloEarth示例,统一使用D3D12最小可行系统 2026-03-15 00:43:54 +08:00
6a0dfb150d docs: 添加第二阶段计划 - RHI抽象层封装 2026-03-13 21:24:02 +08:00
7c54a62f9e feat: 添加Math库和Google Test测试框架
- 新增Math库: Vector2/3/4, Matrix3/4, Quaternion, Transform, Color等
- 新增测试框架: Google Test (gtest)
- 新增140个单元测试,覆盖Vector, Matrix, Quaternion, Geometry
- VolumeRenderer支持vcpkg的NanoVDB
- 添加TESTING.md测试文档
2026-03-13 18:43:14 +08:00