Summary
시뮬레이션 실행 중 발생하는 렉을 줄이기 위해 domain의 spatial index 재사용과 application의 replay/overlay 경량화를 함께 정리한다.
Area
Domain
Why Needed
현재 시뮬레이션과 결과 재생 경로에서 동일한 공간 인덱스와 정적 오버레이를 반복 계산/렌더링해 프레임 저하가 발생한다. pressure 튜닝 PR과는 별개로 성능 관련 변경만 분리해 리뷰 가능하게 관리할 필요가 있다.
Scope
- domain에서 공용 spatial index resource를 pressure/risk/compression/motion 경로에 재사용
- barrier spatial index를 추가해 agent-barrier 근접 탐색 비용 절감
- application에서 replay 중 정적 overlay 캐시를 도입해 불필요한 repaint 감소
- 관련 회귀 테스트 추가 및 기존 동작 유지 확인
Acceptance Criteria
- pressure/risk/motion 경로가 동일 프레임에서 중복 spatial index를 불필요하게 재생성하지 않는다
- replay 중 정적 overlay가 프레임마다 다시 계산/렌더링되지 않는다
- domain/app 테스트와 빌드가 통과한다
Architecture / Dependency Check
- application -> domain -> engine 방향을 유지한다
- Qt UI 코드는 src/application에만 둔다
- spatial index 공유는 engine 변경 없이 domain resource/system 수준에서 구현한다
Dependencies / Blockers
Summary
시뮬레이션 실행 중 발생하는 렉을 줄이기 위해 domain의 spatial index 재사용과 application의 replay/overlay 경량화를 함께 정리한다.
Area
Domain
Why Needed
현재 시뮬레이션과 결과 재생 경로에서 동일한 공간 인덱스와 정적 오버레이를 반복 계산/렌더링해 프레임 저하가 발생한다. pressure 튜닝 PR과는 별개로 성능 관련 변경만 분리해 리뷰 가능하게 관리할 필요가 있다.
Scope
Acceptance Criteria
Architecture / Dependency Check
Dependencies / Blockers