Summary
고정된 데모용 FacilityLayout2D와 최소 navigation 입력을 기반으로 에이전트를 생성하고, fixed-step 2D 이동을 재현하는 최소 시뮬레이션 경로를 구현한다. 이 작업의 목표는 Sprint 1 데모에서 점 형태의 다수 에이전트가 벽과 장애물을 넘지 않고 목적지까지 이동하는 흐름을 안정적으로 보여주는 것이다.
Parent Issue
#2
Area
Domain
Sprint
Sprint 1
Scope
- 데모용 고정
FacilityLayout2D 또는 hand-authored layout fixture를 입력으로 받는 최소 실행 경로를 정리한다
- 시나리오 또는 고정 fixture에서 시작 위치와 목표를 읽어 에이전트 엔티티를 생성하는
AgentSpawnSystem 또는 동등 기능을 구현한다
Position, Velocity, Goal 같은 최소 핫패스 상태를 이용한 fixed-step MovementSystem을 구현한다
- 벽, barrier, non-walkable 영역을 통과하지 않도록 최소 충돌 또는 회피 제어를 넣는다
- 필요 시 domain navigation 데이터(예: baked path query 또는 고정 waypoint 집합)를 참조해 기본 경로 추종을 구현하되, 외부 import 라이브러리 타입에 직접 의존하지 않는다
Acceptance Criteria
- 고정된 데모 맵에서 설정한 수의 에이전트가 재현 가능한 방식으로 생성된다
- 에이전트가 지정된 목표를 향해 이동하며 barrier 또는 비보행 영역을 통과하지 않는다
- 동일 seed와 동일 입력에서 이동 결과가 반복 실행 시 크게 달라지지 않는다
- 최소 100개 수준의 에이전트를 대상으로 기본 이동 데모와 smoke 검증이 가능하다
Architecture / Dependency Check
- 이동 규칙은 domain system으로 구현하고, 개별 entity 객체에 로직을 넣지 않는다
engine은 범용 ECS/runtime만 유지하고, FacilityLayout2D나 navigation 결과는 domain 계약으로 다룬다
- Qt 렌더링과 위젯 코드는
application에만 둔다
- 이 작업은 DXF/IFC import stack 활성화가 없어도 진행 가능해야 하며, imported layout 연동은 별도 follow-up으로 둔다
- include 루트는 계속
src/를 유지하고 domain/..., engine/... 형식을 따른다
Verification Plan
cmake --preset windows-debug-no-app
cmake --build --preset build-no-app-debug
ctest --preset test-no-app-debug
- 가능하면 고정 데모 맵으로 에이전트 spawn/movement 결과를 로그 또는 간단한 시각화로 확인한다
Dependencies / Blockers
#53의 FacilityLayout2D 계약은 이미 정리되었으므로 hard blocker는 아님
- imported layout 추론 결과를 붙이는 작업은
#55와 이어질 수 있지만, 이 이슈의 필수 선행조건은 아니다
- import stack 로컬 빌드(
#52)는 이미 정리되었고, 이 이슈의 최소 경로는 해당 스위치에 종속되지 않는다
Summary
고정된 데모용
FacilityLayout2D와 최소 navigation 입력을 기반으로 에이전트를 생성하고, fixed-step 2D 이동을 재현하는 최소 시뮬레이션 경로를 구현한다. 이 작업의 목표는 Sprint 1 데모에서 점 형태의 다수 에이전트가 벽과 장애물을 넘지 않고 목적지까지 이동하는 흐름을 안정적으로 보여주는 것이다.Parent Issue
#2
Area
Domain
Sprint
Sprint 1
Scope
FacilityLayout2D또는 hand-authored layout fixture를 입력으로 받는 최소 실행 경로를 정리한다AgentSpawnSystem또는 동등 기능을 구현한다Position,Velocity,Goal같은 최소 핫패스 상태를 이용한 fixed-stepMovementSystem을 구현한다Acceptance Criteria
Architecture / Dependency Check
engine은 범용 ECS/runtime만 유지하고,FacilityLayout2D나 navigation 결과는domain계약으로 다룬다application에만 둔다src/를 유지하고domain/...,engine/...형식을 따른다Verification Plan
cmake --preset windows-debug-no-appcmake --build --preset build-no-app-debugctest --preset test-no-app-debugDependencies / Blockers
#53의FacilityLayout2D계약은 이미 정리되었으므로 hard blocker는 아님#55와 이어질 수 있지만, 이 이슈의 필수 선행조건은 아니다#52)는 이미 정리되었고, 이 이슈의 최소 경로는 해당 스위치에 종속되지 않는다