morton code를 구할 때, 좌표를 양자화해서 일부 정보가 소실되는 걸로 알고 있음. 양자화할 때 좌표를 공간의 최대 최소에 대해 0~1로 만든 뒤 각 축이 표현할 수 있는 범위(예시로 30비트에 대해 3차원 각 축은 10비트, unsigned로 2^10 - 1까지)내로 매핑해서 합성하는 것으로 봄.

공간 크기를 좌표 자료형이 표현 가능한 범위로 잡게 되면, 가깝지만 다른 점들이 같은 morton code를 갖게 되버리는 문제들이 있어보임.

지금 BVH 구현하면서 상향식 빌드를 이런 식으로 구현함.

1. 모든 leaf node의 중심점 기준 morton code 변환
2. 큐에 morton code 순서대로 삽입
3. 큐에 노드 하나 남을 때까지 노드를 두 개씩 뽑아 새 interior 노드 자식으로 삼고 큐에 삽입 반복
4. 남은 하나의 노드는 루트로 삼기

노드들의 중심점이 밀집해있을 수록 넓은 공간을 기준으로 변환한 morton code 정렬이 제 기능을 못하는데, 어떻게 해결해야할까?

- dc official App