======= ECL : Object Layering ====== [[library/2014_ECL|상위 레벨로 : Root]] ==== Changelog ==== * 2014/4/17 : [[internal/윤정필]] : 초안 옮겨옴. ======= Physical Channel ======= 0번 레이어 사용. 유닛, 지형 등 대부분의 물리적 오브젝트에 공통적으로 사용한다. ==== Physical - Sensor Object ==== 다른 물리적 오브젝트와 충돌하는지 확인은 하지만, 실제로 물리적인 상호작용은 전혀 하지 않는 오브젝트. Ethereal Layer의 투사체 ( 마법 종류, 화염구 등) 의 피격 판정을 위해 동일 크기의 Physical Sensor Object를 세트로 겹쳐서 구성한다. Physical Sensor Object에서 충돌 판정이 내려질 경우, 쌍으로 묶인 Ethereal Object의 충돌 함수를 부르는 형식. ====== Ethereal Channel ====== 1번 레이어 사용. 마법/비물리적 오브젝트에 범용적으로 사용된다. Ethereal Object끼리만 충돌한다. 투사체 등, Physical Object와 상호작용을 하는 경우, 항상 Physical Sensor Object와 쌍으로 생성하도록 한다. ====== Functional Channel ====== 게임 진행을 위해 배치되는 오브젝트. ==== Skeletal Object ==== 2번 레이어 사용. 유닛의 모션 구현을 돕기 위해 뼈대로서 들어가는 Functional Object들이 속한다. ==== Environmental(inactive) ==== 3번 레이어 사용. 다른 맵으로 이동하기 위한 포탈 등, 게임 진행을 위해 배경에 배치되는 오브젝트 레이어. 일반적으로 어떤 물리적 상호작용도 하지 않는다. ==== Environmental(active) ==== 4번 레이어 사용. 도개교, 엘리베이터 등 기계장치를 표현하기 위해 사용하는 레이어. Physical Channel의 오브젝트와 Breakable Joint로 연결되어 있다. 즉, 플레이어와 충돌하지는 않지만 이어져 있는 다른 오브젝트와의 Joint를 파괴하는 식으로 간접적 상호작용이 가능하다.