Commit Graph
11 Commits
Author SHA1 Message Date
西风逍遥游 7f4818075b fix(script): preserve ECS bindings across full composition 2026-09-02 08:35:51 +08:00
西风逍遥游 2b4cb48a94 fix(script): preserve lazy ECS execution environment 2026-09-01 20:20:55 +08:00
西风逍遥游 f3decec832 Enhance module configuration and instantiation in EveScript. Updated documentation to clarify the behavior of modules and optionalModules, ensuring only specified slots are instantiated during startup. Improved runtime checks and added support for deferred module binding. Removed deprecated compute shaders and example maps to streamline the project structure. 2026-09-01 00:56:50 +08:00
西风逍遥游 5202781651 feat(gpgpu): add resident ECS simulation and script rendering 2026-08-31 18:07:52 +08:00
西风逍遥游 f372842f87 feat(script): enrich script error handling and reporting
- Capture full call stack + throw-site in the Squirrel runtime error hook
  (new common/ScriptError.{h,cpp}) and surface it through ScriptException
  (line/column/function/stackTrace/reported accessors).
- Runtime installs its own error hook and drives execute() with a raw
  sq_call, fixing a null-deref when DevTool's hook replaces ssq's default
  runtime error handler.
- Compile errors now carry source line/column plus a snippet with caret.
- REPL/MCP/Debugger eval paths return the real error text instead of
  generic 'compile failed' / 'runtime failed'.
- Run() skips a second DevTool report for hook-reported script errors.
- ECS bootstrap compile/run failures are printed instead of swallowed.
2026-08-20 23:13:19 +08:00
西风逍遥游 1c755f8940 feat(scene): scene/script-ECS integration, generic links, serialization & picking
Scene module overhaul: per-node script entities (SceneObject/SceneEntity/NodeRef), script ECS view-cache perf, generic multi-link system (renderable/physics/camera/audio), API completeness (transform getters, hierarchy ops, quaternions, tags/layer), incremental transforms, id index, reconcile moves, node events, JSON serialization, ray/frustum picking, spatial-index sync and SceneLoader auto AABB. Includes Cmdline/PhysFS argv0 robustness fix for unit tests.
2026-08-17 22:45:18 +08:00
西风逍遥游 a8a71c7476 feat(ecs): enhance C++ and script integration for entity management
- Introduced a new mechanism for registering C++ entity view functions, allowing Squirrel scripts to access and manipulate C++ entities directly.
- Implemented a `cppCollect` function to traverse class hierarchies and collect C++ entities based on registered views, enhancing script interaction with C++ components.
- Updated the ECS API to expose new functions for registering C++ entity views and collecting entities in scripts.
- Enhanced existing tests to validate the new functionality and ensure proper integration between C++ and Squirrel scripts.
2026-08-14 15:07:39 +08:00
西风逍遥游andCursor Agent 5210135fff feat(gpgpu): bridge ECS systems to compute shaders (#20)
Add ShaderSystem so ECS batch updates can run as GLSL compute kernels:
pack float component fields into SSBOs, dispatch, and write back.

Script: eve.ShaderSystem extends eve.System with bindFields/update.
C++: gpgpu::ShaderSystem + EcsGpu.h View pack/unpack helpers.

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
2026-08-10 21:20:44 +08:00
Cursor Agentand西风逍遥游 ee19dc6f55 feat: export script ECS Entity/Component/System/view API
Wire exposeECS into ModuleManager so Squirrel can define Component and
Entity classes (EntityContainer alias), iterate with eve.view, and drive
logic via eve.System. Reserve eve.Component for ECS (UI keeps UIComponent).

Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>
2026-08-08 08:11:50 +00:00
西风逍遥游 10093e0417 feat: declarative 2D render path with PNG texture loading
Integrate ECS.hpp, Vulkan Batcher/RenderSystem, multi-texture sprites, and Graphics::newTextureFromFile with ImageData PNG encode/decode fixes.
2026-08-04 21:16:55 +08:00
西风逍遥游 412ec4ddcb update 2022-07-16 22:00:44 -07:00