매트 키터가 거리장 기반 솔리드 모델링을 위한 실험적 통합 개발 환경(IDE)인 하프스페이스(Halfspace)를 공개했습니다. 이 도구는 피젯(Fidget)이라는 기하 커널 위에서 작동하며, 사용자가 기본 도형과 스크립트를 조합하여 3D 모델을 생성하고, 이를 이미지나 표준 삼각형 메시(triangle mesh) 형태로 내보낼 수 있도록 지원합니다. 특히 하프스페이스는 모델의 표면뿐만 아니라 그 아래에 있는 거리장 자체를 시각화하여, 기존 솔리드 모델링 방식에서 놓치기 쉬웠던 불연속성이나 잘못된 법선(normal) 벡터 같은 문제를 진단하고 해결할 수 있게 해줍니다.
하프스페이스는 작지만 확장 가능한 표준 라이브러리를 제공하며, 복잡한 모델을 작은 조각으로 나누어 각각 매개변수화하고 시각화하는 점진적 구성 방식을 지원합니다. 이는 저수준의 암시적 표면(implicit surface) 작업을 보다 효율적으로 수행할 수 있게 돕습니다. 웹과 네이티브 환경을 모두 지원하며, 피젯 커널을 개선하여 래스터화(rasterization) 및 후처리(post-processing) 작업을 GPU에서 처리하도록 함으로써 두 환경 모두에서 네이티브 수준의 렌더링 속도를 확보했습니다. 현재는 MPLv2 라이선스의 오픈소스 프로젝트이지만, 적극적인 변경과 호환성 파괴를 감수하는 실험 단계이므로 중요한 용도로의 사용은 권장하지 않습니다.
이 프로젝트는 3D 프린팅과 같은 실제 제작 가능한 모델을 지향하며, 암시적 표면 기반 커널의 장점을 활용합니다. 일반적인 CAD 소프트웨어에서 사용하는 경계 표현(boundary representation) 기반 커널은 여러 개별 표면을 이어 솔리드 물체를 만들지만, 이는 구현이 매우 복잡합니다. 반면 암시적 표면 기반 커널은 한 사람이나 소규모 팀이 전체를 이해하고 개발하기 용이하여 개인 규모의 제작 소프트웨어에 적합합니다. 하프스페이스는 거리장을 직접 시각화함으로써, 표면의 부호만으로는 알 수 없는 거리장의 불연속성이나 기울기(gradient) 크기 문제를 파악하고, 이를 통해 메시 품질을 개선할 수 있는 가능성을 제공합니다.
하프스페이스는 매트 키터가 오랫동안 연구해 온 암시적 표면 커널 개발 경험의 결과물이며, 실질적인 애플리케이션 개발을 통해 피젯 커널 자체를 개선하는 데도 기여했습니다. 특히 웹 환경에서 느렸던 CPU 기반 래스터화 문제를 해결하기 위해 피젯 커널의 렌더링 로직을 GPU 가속으로 전환하면서, 웹과 네이티브 모두에서 성능과 아키텍처가 크게 향상되었습니다. 이는 개발자가 새로운 3D 모델링 도구를 만들거나 기존 도구의 한계를 극복하려는 시도에서 실질적인 기술적 진보를 이끌어낼 수 있음을 보여줍니다.