브라우저에서 실행되는 오픈소스 CAD (SolveSpace)
(solvespace.com)- 데스크톱용으로 개발된 SolveSpace CAD가 emscripten을 통해 브라우저에서 실행 가능한 형태로 포팅됨
- 웹 버전은 최신 개발 브랜치 기반의 실험적 빌드로, 일부 속도 저하와 버그가 존재함
- 한 번 로드되면 네트워크 연결 없이 오프라인에서도 동작하며, 정적 웹사이트처럼 직접 호스팅 가능함
- GitHub의 “building for web (very experimental)” 섹션을 참고해 사용자가 직접 빌드 및 배포할 수 있음
- 브라우저 환경에서 경량 CAD 엔진의 확장 가능성을 보여주는 오픈소스 실험 프로젝트임
SolveSpace 웹 실험 버전
-
SolveSpace는 원래 데스크톱용 CAD 소프트웨어로 개발된 프로그램임
- emscripten을 이용해 브라우저에서도 실행될 만큼 코드가 작고 효율적인 구조임
- 웹 버전은 일부 속도 저하와 버그가 있으나, 작은 모델에서는 충분히 동작함
- 현재 제공되는 웹 버전은 최신 개발 브랜치에서 빌드된 실험적 형태임
- 데스크톱 버전에서는 나타나지 않는 문제나 오류가 발생할 수 있음
- 발견된 버그는 GitHub의 공식 이슈 트래커를 통해 보고 가능함
- 웹 버전은 로드 이후 네트워크 의존성이 없음
- 한 번 로드되면 오프라인 상태에서도 사용 가능함
- 사용자는 직접 빌드 및 호스팅하여 정적 웹사이트처럼 배포할 수 있음
- 자체 호스팅은 GitHub 저장소의 “building for web (very experimental)” 섹션을 참고해 진행 가능함
- 빌드된 결과물은 일반적인 정적 웹사이트처럼 서버에 업로드해 사용할 수 있음
- SolveSpace의 웹 버전은 브라우저 기반 오픈소스 CAD의 가능성을 보여주는 실험적 시도임
- 데스크톱 수준의 기능을 웹 환경에서 구현하려는 경량 CAD 엔진의 확장 사례임
Hacker News 의견들
-
SolveSpace는 파라메트릭 CAD에 대한 독특한 접근을 보여주는 멋진 도구임
하지만 개발 속도가 많이 느려졌고, 모따기(chamfer) 같은 기본 기능조차 구현이 어려운 한계가 있음
요즘은 Dune 3D가 사실상 정신적 후속작처럼 느껴짐- 다음 주요 목표가 바로 Chamfer와 Fillet 기능임
일반적인 경우에 구현하기 매우 어렵기 때문에 모든 케이스를 다루지는 못할 예정임
예전에 이 실험을 했을 때는 단순한 직선 압출의 위아래만 처리할 수 있었음
이번에는 좀 더 일반화된 버전을 시도 중이며, 세 개의 필렛이 만나는 코너는 특히 골치 아플 것 같음 - Dune3D는 내부적으로 SolveSpace를 엔진으로 사용하고 있음
- FreeCAD는 SolveSpace의 제약이 없고, UX도 꽤 괜찮아짐
그래서 나는 FreeCAD로 완전히 옮겼음 - Dune3D와 FreeCAD의 비교가 궁금함
- 오픈소스 CAD 생태계에는 Fusion 360을 대체할 천재 개발자가 필요함
다들 힘을 합쳐서 제대로 된 CAD 엔진을 만들면 좋겠음
Gimp는 아쉽고, Photoshop은 점점 폐쇄적으로 변하는데 이를 해결할 인재들이 움직이지 않는 게 안타까움
- 다음 주요 목표가 바로 Chamfer와 Fillet 기능임
-
SolveSpace는 여러 한계에도 불구하고 사용하는 즐거움이 있는 도구임
인터페이스가 단순하고 직관적이라 작업이 재미있음
다만 제약 조건을 삭제하거나 충돌할 때 뜨는 모달 대화창은 흐름을 끊어서 불편함
웹 포트를 만든 사람에게 경의를 표함. 정말 멋진 작업임- 그 공로는 2020년에 SolveSpace 유지보수를 그만둔 whitequark에게 돌아감
이후 브랜치가 방치되었지만 몇몇 개발자들이 다시 살려냈고, 최신 릴리스에서는 사이트에 직접 통합함
최근에도 PR을 병합했으며, whitequark의 기여가 여전히 크다고 생각함
- 그 공로는 2020년에 SolveSpace 유지보수를 그만둔 whitequark에게 돌아감
-
나는 FreeCAD를 점점 더 많이 쓰고 있지만, SolveSpace는 여전히 가벼운 설계 도구로 훌륭함
특히 SendCutSend나 Oshcut 같은 서비스에 보낼 레이저 커팅용 부품 설계에 적합함
브라우저에서 동작하게 만든 것도 인상적임- FreeCAD는 요즘 정말 놀라움
Autodesk Fusion 360을 완전히 대체했고, 목공 프로젝트에도 충분히 쓸 수 있음
UI도 이해하기 쉽고 기능도 깊음
Blender나 Inkscape처럼 상용 툴에 맞먹는 수준으로 발전 중임
다만 렌더링 기능은 아직 미흡함 - 주말에 FreeCAD를 처음 써봤는데, 3시간 만에 PCI 브래킷을 만들어 3D 프린트까지 했음
유튜브 튜토리얼만 따라 했는데, 25년 전 3D Studio Max 배울 때보다 훨씬 쉬웠음
- FreeCAD는 요즘 정말 놀라움
-
브라우저 기반 CAD 프로젝트 vcad.io를 직접 만들어봄
Rust로 커널을 구현하고 WebAssembly로 컴파일했음
소스코드도 공개함- 공차 처리와 부동소수점 오차 누적은 어떤 전략으로 다루고 있는지 궁금함
- 모델 파일을 찾을 수 없다는 에러가 발생함
huggingface 링크에서 파일이 누락된 듯함 - 이 프로젝트가 경계 표현(B-rep) 방식을 사용하는지 궁금함
- LLM에게 Rust 코드를 작성시켜서 CAD 디자인을 생성할 수도 있는 건지 흥미로움
-
최근 3D 프린팅을 시작하면서 유튜브 광고로 많이 본 OnShape를 먼저 써봤음
SolveSpace와 OnShape를 둘 다 써본 사람들의 비교 의견이 궁금함
개인적으로 OnShape는 직관적이고 반응성도 좋음
Fusion 360은 너무 느려서 5분 만에 꺼버렸음 -
스트림 이벤트를 보면
"type":"content_block_delta"같은 긴 문자열이 반복됨
Anthropic이 약어를 도입하면 시스템 대역폭을 쉽게 절약할 수 있을 것 같음 -
렌더링된 텍스트가 픽셀화된 폰트로 보여서 거슬림
마치 힌팅 없이 픽셀 그리드에 억지로 맞춘 느낌임- GNU Unifont이라는 비트맵 폰트를 사용함
텍스트가 약간 늘어지는 버그가 있을 수도 있음. 이전 윈도우 버전에서도 같은 문제가 있었음 - 데스크톱 버전에서도 동일한 폰트를 쓰고 있어서 의도된 디자인일 가능성이 높음
- GNU Unifont이라는 비트맵 폰트를 사용함
-
브라우저 기반 CAD나 디자인 제품을 만들어서 비싼 상용 플러그인을 대체할 수 있을지 늘 궁금했음
요즘 흐름을 보면 충분히 실현 가능성이 있어 보임 -
SolveSpace는 공식적으로 Windows(Vista~11), Linux, macOS를 지원하고
Emscripten으로 컴파일해 브라우저에서도 실행됨
약간의 수정만 하면 Windows 2000에서도 동작함
관련 이슈 참고
즉, 지난 26년간의 주요 플랫폼(단, MacOS 9 제외)에서 모두 실행 가능함