# 대리석 분수

> Clean Markdown view of GeekNews topic #24261. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=24261](https://news.hada.io/topic?id=24261)
- GeekNews Markdown: [https://news.hada.io/topic/24261.md](https://news.hada.io/topic/24261.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2025-11-10T09:43:49+09:00
- Updated: 2025-11-10T09:43:49+09:00
- Original source: [willmorrison.net](https://willmorrison.net/posts/marble-fountain/)
- Points: 2
- Comments: 1

## Topic Body

- **3D 프린팅과 절차적 생성**을 결합해 복잡한 구조의 예술 작품을 제작한 프로젝트  
- 무작위로 배치된 점을 스플라인으로 연결하고 **경사와 회전 반경을 제어**하는 경로 생성 알고리듬으로 구성  
- **속도 제어와 마찰 문제**를 해결하기 위해 최소 회전 반경과 과도한 뱅킹을 적용, 트랙의 안정성 확보  
- 지지대는 **입자 시스템 기반**으로 생성되어 미적 형태와 구조적 안정성을 동시에 고려  
- 프로젝트는 OpenSCAD 한계를 넘어섰으며, 향후 **SDF 기반 재작성과 속도 모델링 개선** 계획  

---
### 프로젝트 개요
- **Marble Fountain**은 절차적 생성 기법을 이용해 3D 프린터로 출력한 복잡한 예술 구조물  
  - Formlabs 입사 후 고성능 프린터를 사용하게 되면서 대형 알고리듬 구조물 제작 시도  
  - “가장 복잡한 예술 작품”을 목표로 설계된 구조물임  
- 3D 프린팅에서는 복잡성이 비용에 영향을 주지 않으며, 설계의 한계는 CAD 작업 시간에 의해 결정됨  

### 트랙(Tracks)
- 초기 시스템은 **무작위 점 배치 → 스플라인 연결 → 일정 경사 부여** 방식으로 구성  
  - 첫 버전은 단순히 고체 구조에서 튜브를 빼는 형태였으나, 기능 확장을 위해 **경로 해결 알고리듬(path solver)** 추가  
- 경로 해결기는 상단과 하단을 연결하는 **무작위 선분 시리즈**로 시작  
  - 초기 조건이 구조 형태에 큰 영향을 미치며, 다양한 알고리듬 변형을 실험  
- 경로 점들은 다음 규칙을 따름  
  - 경계 상자 내부 유지  
  - 균등 간격 유지  
  - 일정 높이로 끌어당겨 **고정 경사 유지**  
  - 최소·최대 회전 반경 제한  
  - 다른 트랙 및 자기 트랙의 먼 구간과 **상호 반발**  
  - 경사 변화 완화 및 **경사 증가 방지**  
- **속도 제어 문제**는 예상보다 복잡  
  - 구슬이 점 질량처럼 움직이지 않으며, 트랙의 뱅킹 변화가 회전 관성과 마찰에 영향을 줌  
  - 직선 구간에서는 속도가 과도하게 증가하고, 급회전에서는 감속으로 정지 위험 발생  
  - 해결책으로 **최소 회전 반경 설정**과 **과도한 뱅킹 적용**을 통해 속도 소모 유도  
- 리프트 구조는 **볼 스크루(ball screw)** 처럼 작동  
  - 구슬이 나사축을 사방에서 제약해 상단 베어링 없이 회전 가능  
  - 한쪽에만 구슬이 있을 경우 심한 진동으로 모든 구슬이 트랙에서 이탈하는 실패 모드 발생  

### 지지대(Supports)
- 지지대 생성은 **입자 시스템 기반 상향식(top-down) 반복 처리**로 구현  
  - 구조적 충돌보다 **미적 형태 조정**에 더 많은 시간 투입  
  - 프린터의 오버행 허용 범위를 적극 활용  
- 각 지지대의 동작 규칙  
  - 거리와 크기 유사도에 따라 다른 지지대에 **끌림**  
  - 다른 지지대와의 **반발**  
  - 경계 상자 내부 유지  
  - 구조 중심으로부터 일정 반경 유지  
- 지지대는 **관성(inertia)** 을 가지며, 이로 인해 **아치형 곡선 구조**가 형성됨  

### 향후 계획(Looking forward)
- 최종 모델 **내보내기 시간은 5~20분** 소요  
  - OpenSCAD의 한계로 인해 최적화 여지 있음  
  - 향후 **SDF 라이브러리 기반 재작성** 고려  
- 현재 시스템은 **속도 추정 기능 부재**, 단순 휴리스틱에 의존  
  - 카메라 기반 속도 측정으로 **가속도 모델 구축** 시 시간 절약 가능성  
  - 일정 경사 유지가 충돌 방지에는 불리하지만 속도 제어에는 필수  
  - 표면이 미끄러지기 시작하는 **임계점(response curve)** 탐색 계획  

### 회고(Looking back)
- 2024년 2월부터 9월까지 약 7개월간 진행된 **가장 큰 개인 프로젝트**  
  - 전시회(New Alliance Gallery, Somerville) 출품 준비로 막판 집중 작업  
  - 전시 중 시간당 2~3개의 구슬 손실, 모터 과열로 몇 시간만 가동 가능  
  - 과로로 프로젝트를 중단하고 1년 후 공개  
- **동료 Alex**의 조언과 피드백, 그리고 수많은 구슬 실험에 대한 감사 언급  

### 기술 요약
- 사용 기술: **Procedural Generation**, **3D Printing**, **Python**, **OpenSCAD**  
- 구조적 특징: **경로 해결 알고리듬 + 입자 기반 지지대 시스템**  
- 예술적 목표: **기계적 복잡성과 미적 곡선의 결합**  
- 원문에 추가 정보 없음

## Comments



### Comment 46121

- Author: neo
- Created: 2025-11-10T09:43:49+09:00
- Points: 1

###### [Hacker News 의견](https://news.ycombinator.com/item?id=45866697) 
- 입자 시뮬레이션을 이용해 유기적인 **나무 형태의 지지 구조물**을 만든 접근이 정말 창의적임  
  내가 이해한 바로는, 물리 법칙을 정의하고 ‘시간’ 축을 z축으로 매핑해 시뮬레이션을 돌린 것 같음  
  이게 알려진 방식인지, 아니면 직접 고안한 것인지 궁금함. 어쨌든 결과물의 미적 완성도가 훌륭해서 직접 실험해보고 싶음  

- 대리석 분수 설계자들이 컴퓨터를 사용하지 않으면 종종 **구슬 탈선 문제**를 겪음  
  구슬이 트랙에서 튀어나오거나 막히는 걸 관찰하며 원인을 추측하고 수동으로 조정해야 함  
  그런데 이 작품은 몇 시간 동안 구슬이 튀어나오지 않는다는 점이 인상적임  
  트랙이 두 개의 레일로 구성되어 있어서 구슬이 항상 두 지점에서 접촉함  
  완벽한 **뱅킹(기울기)** 을 유지해 중력과 원심력이 균형을 이루게 하는 게 핵심 같음  
  - 실제로는 더 복잡함. 뱅킹이 회전축을 바꿔서 회전 관성을 줄임  
    트랙이 매우 공격적으로 기울어져 있어서 구슬이 과속하거나 튀어나오지 않게 함  
    그래서 모든 구슬이 거의 같은 속도로 부드럽게 내려옴  
    다만 30분마다 한 개 정도는 탈선함. 나는 영상을 찍어 문제 구간을 찾아내고, 수동 조정보다는 **제너레이터 코드를 수정해 다시 출력**하는 식으로 개선했음  
    카메라 피드백 루프를 붙이는 것도 고려 중이지만, 그건 또 다른 프로젝트가 될 듯함  

- 이 작품이 정말 아름다움. 트랙을 이용해 **오디오를 인코딩/디코딩**할 수 있다면 멋질 것 같음  
  구슬의 움직임으로 서로 다른 주파수를 만들어내는 식으로 말임  
  - 나도 실제로 시도해봤음. Python 스크립트로 MIDI 트랙을 **marble run**으로 변환하는 아이디어가 너무 좋아서 해봤는데, 구슬이 너무 튀어서 음정을 만들 수 없었음  
    좀 더 유연한 재질이나 큰 베어링을 쓰면 가능할지도 모르지만, 일단은 일반 버전을 완성하는 데 집중했음  
  - Tom Scott이 캘리포니아의 **뮤지컬 로드**를 다룬 영상이 있음  
    [YouTube 링크](https://www.youtube.com/watch?v=Ef93WmlEho0)  

- 3D 프린터의 **이상적인 활용 사례**를 보여주는 예시라고 생각함  
  이렇게 매끄럽게 움직이는 구슬 트랙과 유기적인 형태를 다른 방식으로 제작하려면 엄청난 수고가 필요했을 것임  
  - 하지만 개인적으로는 3D 프린터의 진짜 장점은 이런 조형물보다는 **작고 맞춤형 생활용품**을 만들어 삶의 질을 높이는 데 있다고 생각함  

- 영상이 정말 잘 만들어졌음. 단순한 **보이스오버와 음악 싱크**, 그리고 작품 자체가 모든 걸 설명해줌. 훌륭함  

- 이 작품이 너무 마음에 듦. **‘이상하게 만족스러운’** 요소들이 가득함  
  나도 아이들에게 확률을 설명하기 위해 구슬 트랙을 활용하고 있었는데, 이걸 HN에서 보니 마치 내 생각을 읽은 것 같았음  

- 단순하면서도 **최면적이고 아름다운 움직임**이 인상적임  
  - ‘최면적’이라는 표현이 정말 맞음. 사람들은 불규칙하게 변화하는 시각 자극에 본능적으로 끌림  
    불이 타오르는 모습, 파도, 강물의 흐름, TV 화면 등 모두 같은 이유로 오래 바라보게 됨  
    이 구슬 트랙은 사실 예측 가능한 시스템인데도 계속 보게 되는 게 신기함  
  - 사운드를 켜면 몰입감이 훨씬 커짐  

- 흰색이나 투명 소재에 **LED를 넣은 버전**도 보고 싶음. 마치 무지개 도로 같을 듯함  

- 나도 비슷한 프로젝트를 진행 중임  
  Python과 Build123D, 3D 프린터를 이용해 **절차적 생성 기반의 구슬 트랙**을 만들고 있음  

- 이 기술이 확장되면 어떤 **스케일의 창의성**이 가능할지 궁금함  
  블록 단위로 조립되는 건물, 현실판 Minecraft 같은 세상 말임  
  - 절차적으로 생성된 **롤러코스터**도 존재할까 궁금함  
  - 실제로 **3D 프린팅 주택**은 이미 시도되고 있음. 며칠 만에 집을 짓는 프로토타입도 있고, 건설 효율이 매우 높음  
  - 만화 *Blame!*에서는 인간이 사라진 뒤 로봇이 절차적으로 건축을 계속해 지구에서 목성까지 이어지는 **거대 구조물(Megastructure)** 을 만든다는 설정이 있음  
    또 영화 *Fracture*에도 멋진 구슬 장치가 등장함  
    [YouTube 링크](https://www.youtube.com/watch?v=Y-v6E9H6nh0)
