← 변경 내역
일일2026-07-06

ECS 쿼리 캐싱 + 뷰포트 기즈모 GPU 구동 + fx-math 독립 패키지

엔진의 ECS 레이어가 아키타입 매칭 쿼리를 캐싱하여 대규모 씬에서 최대 3배 빠른 이터레이션을 제공합니다. 뷰포트 기즈모(이동/회전/스케일 핸들)가 CPU 측 즉시 모드에서 GPU 기반 인스턴스화 파이프라인으로 리팩토링되어 프레임당 JS 오버헤드가 제거되었습니다. 공유 수학 라이브러리가 독립적인 fx-math 패키지로 추출되어 엔진, 에디터, CLI 서브 리포지토리 전반에서 재사용 가능합니다. 머티리얼 시스템이 핫 리로드를 지원하여 PBR 조정이 Play 모드에 재진입하지 않고 즉시 반영됩니다. 씬 계층 패널이 다중 루트 드래그 앤 드롭을 처리하여 대량 엔티티 재구성이 가능합니다.

엔진: 아키타입 인덱싱을 통한 ECS 쿼리 캐싱

ECS 런타임이 프레임 간에 아키타입 매칭된 컴포넌트 쿼리를 캐싱합니다. 이전에는 world.query(Position, Velocity) 호출마다 매 틱 전체 아키타입 스캔을 수행했습니다. 엔진이 첫 쿼리 시 아키타입 인덱스를 구축하고 아키타입이 추가되거나 제거될 때만 무효화합니다. 10k+ 엔티티가 있는 씬에서 벤치마크 기준 이터레이션 처리량이 최대 3배 향상되었습니다.

에디터: 뷰포트 기즈모를 GPU 기반 파이프라인으로 리팩토링

3D 뷰포트의 이동, 회전, 스케일 기즈모가 CPU 측 즉시 모드 캔버스 오버레이에서 GPU 기반 인스턴스화 렌더링 파이프라인으로 재작성되었습니다. 각 기즈모 핸들이 단일 인스턴스화 드로우 콜이 되어 컬러 ID 프레임버퍼를 통한 깊이 테스트 피킹을 구현합니다. 밀집 씬에서 오브젝트 조작 시 프레임당 JavaScript 오버헤드가 제거되었습니다.

서브 리포: fx-math를 독립 패키지로 추출

엔진 코어, 에디터, CLI 패키지에 중복되어 있던 수학 프리미티브(Vec2, Vec3, Vec4, Mat4, Quat, AABB, Ray 등)가 독립적인 fx-math 패키지로 추출되었습니다. 세 서브 리포지토리 모두 이 단일 소스에 의존하게 되어 엔진 측과 에디터 측 수학 라이브러리 간의 드리프트가 해소되고 총 번들 크기가 약 40KB 감소했습니다.

엔진: 머티리얼 시스템 핫 리로드

Inspector에서 PBR 머티리얼 파라미터(알베도, 러프니스, 메탈릭, 노멀 맵 등) 편집이 Play 모드를 중지하고 재시작하지 않아도 뷰포트에 즉시 반영됩니다. 엔진이 머티리얼 에셋 파일 핸들을 감시하고 변경 시 GPU 리소스 재업로드를 트리거합니다.

에디터: 씬 계층 패널 다중 루트 드래그 앤 드롭

씬 계층 패널에서 여러 루트 레벨 엔티티를 동시에 선택하고 드래그할 수 있습니다. Ctrl+클릭 또는 Shift+클릭으로 다중 선택한 후 전체 선택을 드래그하여 새 노드 아래로 재부모화하거나 계층 내에서 재정렬할 수 있습니다.

← 모든 일일 업데이트