AI 탐구노트

Triangle Splatting - 다시 기본으로, 삼각형 기반의 실시간 렌더링 기술 본문

AI 기술

Triangle Splatting - 다시 기본으로, 삼각형 기반의 실시간 렌더링 기술

42morrow 2025. 6. 8. 12:22

 

3D 그래픽스 기술은 현실 세계를 가상 공간에 재현하는 데 중요한 역할을 하고 있습니다. 최근에는 인공지능 기술을 활용한 NeRF(Neural Radiance Fields)나 Gaussian Splatting 같은 방식이 각광받고 있습니다. 이러한 기술은 사진 몇 장만으로 정교한 3D 장면을 복원할 수 있지만, 학습에 시간이 오래 걸리고 실시간 렌더링에 어려움이 있다는 단점도 있습니다.

흥미로운 점은, 과거부터 지금까지 게임 엔진이나 실시간 그래픽스에서는 삼각형(triangle)이라는 단순한 도형이 핵심 요소로 사용되고 있다는 것입니다. 그래픽카드(GPU)는 삼각형 처리에 최적화되어 있어 매우 빠르게 이미지를 렌더링할 수 있습니다. 그러나 기존의 인공지능 기반 기술에서는 삼각형을 직접 활용하기가 어려웠고, 대부분은 연속적인 필드나 점 구름 기반의 데이터 구조를 사용했습니다.

'Triangle Splatting'은 삼각형 자체를 인공지능이 직접 학습할 수 있는 방식으로 바꾸어, 전통적인 그래픽 기술과 현대 인공지능 기술을 자연스럽게 연결하는 새로운 방법을 제안합니다. 다들 'Yes'할 때 'No' 하고 있는 셈이죠. 그러면서 새로운 대안을 만들어나가고 있습니다. 

 

그림 : Triangle Splatting 개요 (왼쪽은 최종 렌더링 결과, 가운데는 부드럽게 섞이는 모습(soft blending), 오른쪽은 삼각형 구조 시각화)


Triangle Splatting

1) 기존 방식의 문제점

 

기존의 NeRF나 Gaussian Splatting 방식은 3차원 공간을 수학적인 함수나 수많은 점들로 표현합니다. 이들은 높은 품질의 이미지를 생성할 수 있지만, 렌더링 속도가 느리고, 실제 게임 엔진이나 그래픽스 파이프라인과의 호환성이 떨어집니다. 특히 Gaussian은 경계가 부드러워서 날카로운 물체나 명확한 구조를 표현하는 데 한계가 있습니다.

 

또한, 기존의 삼각형 기반 렌더링은 미리 정의된 메쉬 구조를 필요로 하기 때문에, 자유롭게 형태를 바꾸거나 학습하는 데 어려움이 있었습니다.

 

2) 접근 방식

 

이 논문에서는 삼각형 소프(triangle soup)라는 개념을 사용합니다. 이는 구조화되지 않은 많은 삼각형들로 장면을 구성하고, 각 삼각형을 AI가 직접 최적화할 수 있도록 학습합니다. 이러한 접근은 NeRF처럼 장면을 학습하면서도, 결과물을 바로 GPU에서 빠르게 렌더링할 수 있게 만듭니다.

 

핵심은 삼각형을 ‘부드러운(splatting)’ 방식으로 그리는 것입니다. 각 삼각형의 경계를 조금 부드럽게 처리해서 이미지 상에서 자연스럽게 blending되도록 만들고, 이 과정에서 각 삼각형의 색상, 위치, 투명도 등을 동시에 최적화합니다.

 

3) 아키텍처

 

 

4) 세부 적용 기술

  • Window Function (창 함수)
    각 삼각형이 이미지에 얼마만큼 영향을 미치는지를 계산하는 함수입니다. 기존의 시그모이드 함수보다 훨씬 더 정확하게 삼각형 내부만 영향을 주는 새로운 수식을 제안했습니다. 이 덕분에 삼각형이 너무 흐릿해지지 않고, 정확하게 장면을 표현할 수 있습니다.

그림 : Window 함수 비교 (위쪽:새로 제안된 창 함수 vs 아래쪽:기존 방식에서 사용되던 Sigmoid 기반 창 함수)

 

  • Pruning & Densification (제거와 밀도 조절)
    불필요한 삼각형은 제거하고, 복잡한 부분은 삼각형을 더 많이 배치해서 표현력을 높입니다. MCMC 기법을 활용해 자동으로 삼각형을 더하거나 제거하면서 학습이 진행됩니다.

그림 : 삼각형 Pruning (작은 시야각에서만 보이는 삼각형 제거해 깔끔한 결과 유지)

 

 

  • Differentiable Rasterization (미분 가능한 래스터화)
    각 삼각형을 이미지로 그릴 때, 경계가 너무 날카롭지 않게 부드럽게 그리는 방식입니다. 이 덕분에 학습이 가능하며, 최종적으로는 일반적인 그래픽스 시스템에서도 그대로 사용할 수 있습니다.
  • Optimization (최적화 과정)
    초기에는 sparse point cloud에서 삼각형을 생성하고, 점점 더 이미지와 잘 맞도록 삼각형의 위치와 색상, 투명도 등을 학습합니다. 다양한 손실 함수가 사용되어, 이미지 품질, 경계 표현, 불필요한 삼각형 제거 등을 조절합니다.
  • 속도와 품질 비교
    최신 기술인 Zip-NeRF보다 이미지 품질이 비슷하거나 더 좋고, 렌더링 속도는 500배 이상 빠릅니다. 특히 실시간 렌더링이 중요한 게임 엔진이나 AR/VR 환경에서 매우 유용합니다.

5) 제약사항

  • 야외 장면처럼 구조가 복잡하거나 복잡한 깊이 표현이 필요한 경우, 삼각형 기반 표현이 부정확할 수 있습니다.
  • 최종 결과는 삼각형 모양 그대로 렌더링되지만, 이들을 연결하여 연속적인 메쉬 구조로 만드는 후처리가 아직은 별도로 필요합니다.

 

Triangle Splatting은 인공지능과 전통적인 3D 그래픽 기술 사이의 간극을 성공적으로 메워주는 기술입니다. 삼각형이라는 단순한 형태를 기반으로 하면서도, 최신 렌더링 기술들과 경쟁할 수 있는 품질과 속도를 보여줍니다. 실시간 렌더링이 필요한 다양한 응용 분야에서 즉시 사용 가능하며, 향후 메쉬 기반 학습 기술의 발전에도 중요한 기반이 될 수 있습니다.

만약 제약사항에서 언급한 문제들이 해결된다면, Triangle Splatting은 고속·고품질 3D 렌더링의 표준이 될 가능성이 높습니다.

 


 

 

참고자료

  • 사이트) Triangle Splatting for Real-Time Radiance Field Rendering 프로젝트 (링크)
  • 논문) Triangle Splatting for Real-Time Radiance Field Rendering (링크)
  • 코드) Triangle Splatting github 저장소 (링크) - Apache 2.0 라이선스를 따릅니다.

 


Q&A

 

Q. Triangle Splatting은 어떤 상황에서 특히 효과적인가요?

실내 장면이나 구조가 명확한 환경에서 삼각형이 실제 구조를 잘 표현할 수 있어 성능이 특히 뛰어납니다.

 

Q. 기존의 NeRF 방식과 가장 큰 차이점은 무엇인가요?

NeRF는 연속적인 필드를 사용하지만 Triangle Splatting은 삼각형이라는 명확한 경계의 도형을 사용합니다. 이로 인해 렌더링 속도가 훨씬 빠릅니다.

 

Q. 최종 결과물을 게임 엔진에서 바로 사용할 수 있나요?

네, 학습이 완료된 삼각형들은 기존 게임 엔진에서 바로 렌더링이 가능하며, 초당 2,400프레임 이상도 가능합니다.