Commit Graph

2 Commits

Author SHA1 Message Date
hypercross 6f9efc050b feat: add component validation and TryGetComponent
- Implement `TryGetComponent<T>` in `World` and `SparseSet<T>`
- Add validation to ensure `ForEach` type parameters match the
  `QueryDescriptor`
- Improve error handling in `SparseSet<T>.Get` to throw
  `InvalidOperationException`
- Use `GUID` instead of `FullName` for `QueryDescriptor` hash stability
2026-07-18 20:07:43 +08:00
hypercross 34439e0f95 feat: initialize OECS project structure
Initializes the OECS repository with the core foundation, including:

- Entity management with 24-bit IDs and 8-bit versioning
- Sparse set-based component storage
- Entity allocation and recycling logic
- Core World API for entity and component lifecycle
- Project scaffolding for source and unit tests
- Design documentation and architecture decision records (ADRs)
2026-07-18 19:03:37 +08:00