-
Notifications
You must be signed in to change notification settings - Fork 1
Vector Graphics Resources
NSG edited this page Jul 12, 2026
·
2 revisions
오픈소스 코어 벡터 그래픽스 라이브러리, 이를 사용하는 제품과 연구, 벡터 그래픽스 기술의 기초·최신 자료, 그리고 애니메이션(모핑·스켈레탈)·3D 표현·물리 효과 자료 모음입니다.
ThorVG 자체에 대한 자료는 ThorVG Resources에 별도로 정리되어 있습니다.
드로잉, SVG, Lottie, Rive 등을 렌더링하는 오픈소스 코어 벡터 그래픽스 라이브러리입니다.
- Skia - Google이 관리하는 오픈소스 2D 그래픽 라이브러리 공식 사이트. Chrome, Android, Flutter에서 사용됨
- About Skia - BSD 라이선스, 주요 사용 제품(Chrome, ChromeOS, Android, Flutter)을 설명하는 프로젝트 개요
- Documentation | Skia - 사용자/개발자 문서, 모듈, 설계 문서로 연결되는 공식 문서 인덱스
- API Reference and Overview | Skia - SkCanvas, SkPaint, SkPath 등 핵심 API 개요 문서
- SkCanvas Overview | Skia - 그리기 컨텍스트 SkCanvas의 구조와 매트릭스/클립 스택 설명
- SkPaint Overview | Skia - 색상, 필터, 효과 등 스타일 속성을 담는 SkPaint 객체 개요
- Skia API Reference (Doxygen) - Doxygen으로 자동 생성된 Skia C++ 클래스 레퍼런스
- Design Documents | Skia - 안티에일리어싱, 텍스트, PDF, 그라디언트 등 주요 기능의 설계 문서 모음
- skia - Git at Google - Skia의 정식(canonical) 소스 저장소. 코드 리뷰의 기준 저장소
- Skia Git repositories - skia, buildbot, skcms 등 관련 저장소 목록을 제공하는 공식 Git 호스팅
- GitHub: google/skia - googlesource를 미러링한 공식 GitHub 저장소(BSD-3-Clause)
- skia/src/gpu - 레거시 Ganesh와 차세대 Graphite GPU 백엔드 소스가 위치한 디렉터리
- src/gpu/graphite - 차세대 GPU 백엔드 Graphite(Metal/Vulkan/Dawn 대상) 소스 디렉터리
- Graphics and Skia | The Chromium Projects - Chromium이 Skia를 그래픽 엔진으로 통합해 사용하는 방식을 다룬 설계 문서
- Library Modules | Skia - CanvasKit, Skottie 등 Skia 상위 모듈 목록
- CanvasKit - Skia + WebAssembly - 웹(WebAssembly)에서 Skia 그래픽 API를 사용하는 CanvasKit 문서
- Skottie - Lottie Animation Player - Skia로 Lottie(JSON) 애니메이션을 렌더링하는 Skottie 모듈 문서
- Skia Graphics Engine - Wikipedia - Skia의 역사와 사용 제품(Chrome, Firefox, Android, LibreOffice 등) 정리
- Blend2D - JIT 컴파일러 기반 고성능 2D 벡터 그래픽 엔진 공식 홈페이지. Petr Kobalicek 개발, Zlib 라이선스
- About - Blend2D - JIT 파이프라인 생성, 해석적 래스터라이저, 곡선 오프셋 스트로킹, 멀티스레드 렌더링을 설명하는 아키텍처 소개
-
Performance - Blend2D -
bl_bench로 측정한 성능 벤치마크 시각화. AGG, Cairo, JUCE, Skia 등과 비교 가능 - Research - Blend2D - Bézier 곡선 오프셋 관련 연구 논문과 발표 자료를 모은 공식 리서치 페이지
- Blend2D: High-Performance 2D Vector Graphics (Helsinki 2023) - Blend2D 설계와 성능을 다룬 저자 발표 자료 PDF
- API Reference - Blend2D - Geometries, Imaging, Styling, Text, Rendering 등으로 구성된 C/C++ API 레퍼런스
-
Getting Started - Blend2D -
BLContext렌더링 컨텍스트로 경로, 그라디언트, 패턴, 텍스트를 그리는 입문 가이드 - Multithreaded Rendering - Blend2D - 작업을 배치로 직렬화해 워커 스레드가 처리하는 비동기 멀티스레드 렌더링 설계 문서
- Build Instructions - Blend2D - CMake 빌드 방법과 지원 플랫폼(X86, AArch64), AsmJit 의존성 설정
- Download - Blend2D - AsmJit 의존성을 포함한 소스 패키지 다운로드(SHA256 제공)
- GitHub: blend2d/blend2d - Blend2D 엔진 공식 저장소. 유일한 의존성은 AsmJit
-
GitHub: blend2d/blend2d-apps - 인터랙티브 데모(
bl_demos)와 벤치마킹 도구(bl_bench) 저장소. 2025년 10월 아카이브됨 - AsmJit - 저지연 런타임 머신 코드 생성 C++ 라이브러리. Blend2D의 JIT 파이프라인 생성에 사용
- GitHub: asmjit/asmjit - X86/X86_64/AArch64용 런타임 머신 코드 생성 라이브러리 공식 저장소
- Petr Kobalicek - Blend2D와 AsmJit 창시자의 개인 홈페이지
- Blend2D: Working Towards A New Software-Based 2D Renderer - Phoronix - JIT 파이프라인 기반 소프트웨어 2D 렌더러 개발을 다룬 기사
- Cairo Graphics - X11, Quartz, Win32, 이미지, PDF, PS, SVG 백엔드를 지원하는 2D 벡터 그래픽 C 라이브러리 공식 홈페이지
- cairo/cairo · Freedesktop GitLab - freedesktop.org GitLab의 Cairo 공식 소스 저장소
- Cairo API Reference Manual - 드로잉, 경로, 패턴, 변환, 텍스트, 서피스를 다루는 C API 공식 레퍼런스
- Cairo Documentation - FAQ, 튜토리얼, 매뉴얼, 쿡북, 샘플로 연결되는 공식 문서 색인
- Cairo Tutorial - destination·source·mask·path·context 등 Cairo 드로잉 모델을 설명하는 공식 입문 튜토리얼
- Cairo FAQ - 입문, 드로잉, 성능을 다루는 공식 FAQ
- Cairo Examples - 코드 스니펫과 기여 예제 저장소로 연결되는 예제 페이지
- Cairo Download - 소스 릴리스 및 pixman 등 의존 라이브러리 다운로드
- Cairo Bindings - Python, C++, Ruby 등 여러 언어용 바인딩 목록
- cairomm - Cairo의 C++ 래퍼 바인딩
- cairo Image Surfaces - 메모리 버퍼로 렌더링하는 이미지 서피스 백엔드 API 문서
- cairo PDF Surfaces - PDF 파일로 출력하는 다중 페이지 PDF 서피스 백엔드 API 문서
- Cairo (graphics) - Wikipedia - Cairo 개요와 사용처(GTK, Firefox, WebKit, Mono, Poppler, Inkscape 등) 정리
- Pango - 국제화 중심 텍스트 레이아웃·렌더링 라이브러리. PangoCairo 모듈로 Cairo와 통합
- PangoCairo - Rendering with Cairo - Pango 텍스트 레이아웃을 Cairo 서피스에 렌더링하는 공식 API 문서
- GTK Architecture - Pango - Pango+Cairo가 GTK의 텍스트·그래픽 렌더링 핵심임을 설명하는 아키텍처 문서
- librsvg - Text layout - SVG 텍스트를 Pango로 레이아웃하고 Cairo로 렌더링하는 방식 설명
- Rive - 디자인·애니메이션·인터랙션을 한 곳에서 만드는 공식 홈페이지. Spotify, Duolingo, Google 등에서 사용됨
- Rive Renderer - GPU 가속 벡터 렌더러 공식 소개. 120fps, 해석적 안티에일리어싱, 오픈소스
- GitHub: rive-app - 런타임과 렌더러 저장소가 모여 있는 공식 GitHub 조직
-
GitHub: rive-app/rive-runtime - 저수준 C++ 런타임 및 렌더러.
.riv로드, 스테이트 머신 구동, Metal/Vulkan/D3D11·12/OpenGL·WebGL 백엔드 (MIT) - GitHub: rive-app/rive-renderer - 2024년 오픈소스로 공개된 Rive Renderer 저장소. 현재 rive-runtime으로 리다이렉트됨
-
GitHub: rive-app/rive-cpp-legacy - Skia 렌더러를 쓰던 구
rive-cppC++ 런타임의 레거시 저장소 - Rive Renderer - now open source and available on all platforms - 2024년 3월 렌더러 오픈소스 공개 발표. GPU 삼각형 래스터화로 벡터 경로를 렌더링
- Reinventing feathering for the Vectorian era - Clockwise 필 규칙과 삼각형 커버리지 안티에일리어싱을 다룬 렌더러 심층 해설 (2025.04)
- Introducing Vector Feathering - 성능 저하 없이 벡터 경계를 부드럽게 처리하는 Vector Feathering 기법 소개 (2025.02)
- Rive Renderer - open source and perfect for WebGL (Khronos) - Khronos가 호스팅한 Rive Renderer의 WebGL 렌더링 기술 발표 자료
- .riv File Format - 리틀엔디언 헤더, RIVE 핑거프린트, ToC, 메이저 버전 호환성을 정의한 바이너리 포맷 문서
- Getting Started with the Rive Runtimes - Web/Apple/Android/Flutter/React Native/Unity/Unreal을 지원하는 런타임 시작 문서 (MIT)
- GitHub: rive-app/awesome-rive - 런타임 예제·문서·튜토리얼·리소스를 큐레이션한 공식 awesome 리스트
-
GitHub: rive-app/rive-wasm - 브라우저에서
.riv를 재생·제어하는 웹용 WebAssembly/JS 런타임 - GitHub: rive-app/rive-react - JS/Wasm 런타임 위에 컴포넌트·훅을 제공하는 공식 React 런타임
- GitHub: rive-app/rive-ios - C++ 코어를 래핑한 공식 iOS/macOS 런타임. UIKit·AppKit·SwiftUI 지원
- GitHub: rive-app/rive-android - Kotlin·C++로 작성된 공식 Android 런타임
- GitHub: rive-app/rive-flutter - iOS/Android/macOS/Windows/Linux/Web을 지원하는 공식 Flutter/Dart 런타임
- GitHub: rive-app/rive-unity - 최신 C++ 코어와 Rive Renderer를 통합한 공식 Unity 런타임
- GitHub: rive-app/rive-rs - Vello 백엔드를 사용하는 공식 Rust 런타임
- Linebender - Rust 중심의 2D 그래픽스·UI 오픈소스 커뮤니티 홈페이지. Vello, Kurbo, Parley, Xilem 등 생태계 프로젝트의 허브
-
GitHub: linebender/vello - GPU 컴퓨트 중심 2D 렌더러 (구 piet-gpu). wgpu 위에서 프리픽스 섬 알고리즘으로 순차 작업을 컴퓨트 셰이더로 병렬화. 저장소 내
sparse_strips워크스페이스에서 차세대 vello_cpu(CPU 전용)·vello_hybrid(CPU/GPU 하이브리드)도 개발 중 - GitHub: linebender/kurbo - 2D 곡선·벡터 경로 자료구조와 알고리즘 라이브러리. 베지어 곡선 연산의 정확도와 성능에 초점
- GitHub: linebender/peniko - 렌더링·합성 스타일을 정의하는 2D 그래픽 타입 라이브러리. kurbo 위에서 브러시·그라디언트 등 비기하 프리미티브 제공
- GitHub: linebender/parley - 리치 텍스트 레이아웃 라이브러리. Fontique(폰트 폴백), HarfRust(셰이핑), Skrifa(폰트 읽기), ICU4X(텍스트 분석) 스택 위에 구축
- GitHub: linebender/xilem - React·SwiftUI·Elm에서 영감을 받은 실험적 반응형 Rust UI 아키텍처. Vello와 wgpu로 렌더링
- GitHub: linebender/vello_svg - usvg 파싱 기반으로 SVG를 Vello 씬으로 렌더링하는 통합 크레이트
- GitHub: linebender/velato - Lottie 애니메이션 파싱·렌더링 라이브러리. Vello 연동을 기본 제공
- LunaSVG - C++ 경량 SVG 렌더링/조작 라이브러리. PlutoVG를 렌더링 엔진으로 사용, SVG 1.1 및 Tiny 1.2 지원
- PlutoVG - C로 작성된 독립형 2D 벡터 그래픽 라이브러리. LunaSVG의 렌더링 엔진
- PlutoSVG - C로 작성된 소형 SVG 렌더링 라이브러리. OpenType 내장 SVG와 아이콘 렌더링에 특화
- NanoVG - OpenGL 기반 안티에일리어싱 2D 벡터 드로잉 라이브러리. HTML5 Canvas 유사 API
- NanoSVG - 단일 헤더 파일의 초경량 C SVG 파서. 큐빅 베지어 경로 출력, 간단한 소프트웨어 래스터라이저 포함
- Anti-Grain Geometry (AGG) - 서브픽셀 정확도의 안티에일리어싱을 구현한 고품질 C++ 소프트웨어 2D 래스터라이저
- Qt 2D Graphics (QPainter / Qt Quick Shapes) - QPainter는 CPU 래스터라이저, Qt Quick Shapes는 GPU 가속 곡선 렌더링
- Spinel (Google Fuchsia) - Vulkan 1.2+ 타일 기반으로 전 파이프라인을 병렬화한 GPU 컴퓨트 벡터 그래픽 파이프라인
- Ladybird - 웹 표준 기반 독립 브라우저. 자체 2D 그래픽/렌더링 라이브러리 LibGfx 사용
- Apache Batik SVG Toolkit - SVG 표시/생성/조작과 래스터화(JPEG/PNG/TIFF 변환)까지 지원하는 Java 툴킷
- resvg - Rust로 작성된 SVG 렌더링 라이브러리. tiny-skia 기반 CPU 렌더링, 전체 SVG 사양 지원 목표. 2024년 10월부터 Linebender 산하에서 유지 관리
- tiny-skia - Skia 일부를 Rust로 이식한 CPU 소프트웨어 래스터라이저. resvg의 렌더링 백엔드
- Forma - Google의 실험적 Rust 벡터 렌더러. CPU(SIMD+Rayon)와 GPU(wgpu) 백엔드 지원 (2024년 아카이브)
- piet - Direct2D/Core Graphics/Cairo 네이티브 백엔드 위에서 동작하는 Rust 2D 그래픽 추상화 레이어
- Pathfinder - 커버리지 기반 안티에일리어싱을 사용하는 Rust GPU 폰트/벡터 그래픽 래스터라이저 (Servo)
- WebRender - 래스터화를 GPU로 오프로드하는 Rust 2D 렌더링 엔진. Firefox와 Servo가 사용
- femtovg - NanoVG를 포팅한 Rust GPU 가속 안티에일리어싱 2D 벡터 드로잉 라이브러리. OpenGL ES 3.0+ 및 wgpu 백엔드
- raqote - 순수 Rust로 작성된 작고 빠른 소프트웨어 2D 그래픽 라이브러리
- librsvg - GNOME의 SVG 렌더링 라이브러리. C에서 Rust로 이식되었으며 Cairo 서피스에 렌더링
- Flutter Impeller - 셰이더를 빌드 시점에 사전 컴파일해 런타임 셰이더 컴파일 잭을 제거한 Flutter 렌더링 엔진. Metal/Vulkan 기반
- Gio (gioui) - Go용 크로스플랫폼 즉시 모드 GUI 라이브러리. Pathfinder 기반 GPU 벡터 렌더러 내장
- tdewolff/canvas - SVG/PDF/EPS/래스터 출력과 HarfBuzz 텍스트 셰이핑을 지원하는 Go 벡터 그래픽 라이브러리
- fogleman/gg - 순수 Go로 도형, 텍스트, 그라디언트, 변환을 렌더링하는 2D 그래픽 라이브러리
- srwiley/oksvg - SVG 2.0 사양을 부분 구현한 Go 래스터라이저. rasterx 패키지 기반
- PixiJS - WebGPU/WebGL 기반 고속 HTML5 2D 렌더링 엔진 (TypeScript)
- Paper.js - HTML5 Canvas 기반 벡터 그래픽 스크립팅 프레임워크. Scriptographer의 JavaScript 포팅
- Fabric.js - HTML5 Canvas용 JavaScript 라이브러리이자 SVG-Canvas 양방향 변환 파서
- Konva - 데스크톱/모바일용 인터랙티브 HTML5 Canvas 2D JavaScript 프레임워크
- Rough.js - 손으로 그린 듯한 스케치 스타일 그래픽 라이브러리. Canvas와 SVG 모두 지원
- Two.js - 렌더러 불가지론 설계의 2D 드로잉 API. 동일 API로 SVG·Canvas2D·WebGL에 렌더링
- SVG.js - 의존성 없는 경량 SVG 조작·애니메이션 라이브러리
- Asymptote - LaTeX 라벨 조판을 지원하는 수학/기술 도면용 서술형 벡터 그래픽 언어
- egui - 즉시 모드 Rust GUI. 자체 2D 그래픽 API인 epaint로 도형을 삼각형 메시로 테셀레이션해 렌더링
-
iced - Elm 아키텍처 기반 크로스플랫폼 Rust GUI.
iced_wgpu(Vulkan·Metal·DX12)와 소프트웨어 폴백iced_tiny_skia렌더러 내장 - GPUI - Zed 에디터의 하이브리드 즉시/유지 모드 GPU 가속 Rust UI 프레임워크. 사각형·둥근 모서리·그림자를 SDF 셰이더로 그림 (렌더링 해설 블로그)
- Makepad - 네이티브·웹을 겨냥한 Rust UI 런타임. GPU 가속 2D/3D 렌더링과 라이브 편집 가능한 디자인 DSL 제공
- FreeType - TrueType/Type1/OpenType 등 벡터·비트맵 폰트를 렌더링하는 오픈소스 폰트 래스터라이저
- Pixman - 저수준 픽셀 조작 및 래스터라이제이션 라이브러리. Cairo와 X 서버가 사용
- HarfBuzz - 유니코드 텍스트를 글리프로 배치하는 오픈타입 텍스트 셰이핑 엔진. Firefox/Chromium/LibreOffice 등에서 사용
- msdfgen - 다중 채널 서명 거리 필드(MSDF) 생성기. GPU에서 선명한 벡터/텍스트 렌더링에 사용
- CGAL - 계산기하 알고리즘의 표준 C++ 라이브러리 (5.0부터 헤더 온리). 정확(exact) 연산 기반
- CGAL 2D Arrangements - 선분·원뿔곡선은 물론 임의 차수(자기교차 포함) 베지어 곡선이 만드는 평면 분할을 다루는 패키지
- CGAL 2D Regularized Boolean Set-Operations - 원호·베지어 곡선으로 둘러싸인 일반 다각형까지 지원하는 합집합·교집합·차집합 연산
- CGAL 2D Polygons - 다각형(구멍 포함) 자료구조와 면적·단순성·볼록성·점 포함 판정 알고리즘
- Clipper2 - 다각형 클리핑(교집합·합집합·차집합·XOR)과 오프셋의 사실상 표준 라이브러리. C++/C#/Delphi 구현과 다수 언어 포트
- earcut - 다각형을 삼각형으로 분할하는 초고속 JS 라이브러리. Mapbox GL·three.js 등 벡터 타일/GPU 파이프라인에서 사용 (earcut.hpp C++ 포트 공식 제공)
- libtess2 - GLU 레퍼런스 테셀레이터를 리팩터링한 C 라이브러리. 자기교차·구멍 포함 임의 다각형을 삼각분할
- lyon - SVG 호환 경로를 GPU용 정점/인덱스 버퍼로 테셀레이션하는 Rust 라이브러리
- cavalier_contours - 원호 세그먼트(bulge)를 포함한 폴리라인의 평행 오프셋과 불리언 연산을 지원하는 Rust 라이브러리. CAD 스타일 2D 연산에 특화
- poly2tri - 제약 들로네 삼각분할(CDT) C++ 라이브러리. 구멍·스타이너 점이 있는 단순 다각형을 삼각분할
각 항목에는 확인된 범위 내에서 어떤 코어 라이브러리(렌더러)를 사용하는지 함께 표기합니다.
- DiffVG - SIGGRAPH Asia 2020. 픽셀 공간에서 벡터 파라미터(제어점·선폭·투명도)로 그래디언트를 역전파하는 미분가능 벡터 그래픽 래스터라이저. 이후 대부분의 SVG 생성 연구의 기반 (논문)
- PyTorch-SVGRender - DiffVG·CLIPasso·VectorFusion·SVGDreamer 등 다수 기법을 한곳에서 재현하는 미분가능 SVG 렌더링 통합 라이브러리
- SVG-VAE: A Learned Representation for Scalable Vector Graphics - 폰트를 순차 생성 모델로 학습하는 벡터 그래픽 생성 연구의 기초 논문 (Google, 2019)
- DeepSVG - NeurIPS 2020. Transformer 기반 계층적 생성 네트워크로 SVG 아이콘을 생성·보간·애니메이션. SVG-Icons8 데이터셋 포함. 코어: SVG 커맨드 시퀀스 생성(렌더링은 cairosvg) (논문)
- Im2Vec - CVPR 2021 Oral. 벡터 정답 없이 래스터 이미지만으로 복잡한 위상의 벡터 그래픽을 생성하는 미분가능 파이프라인. 코어: DiffVG
- CLIPDraw - 2021. 학습 없이 사전학습 CLIP만으로 텍스트에서 벡터 스트로크 드로잉을 합성한 초기 대표 연구
- StyleCLIPDraw - IJCAI 2022. CLIPDraw에 스타일 손실을 더해 콘텐츠와 화풍을 함께 제어. 코어: DiffVG (논문)
- VectorFusion - CVPR 2023. 캡션된 SVG 데이터 없이 사전학습 텍스트-이미지 확산모델을 SDS로 증류해 텍스트→SVG 생성
- DiffSketcher - NeurIPS 2023. 잠재확산모델을 prior로 베지어 곡선을 SDS로 최적화하는 텍스트→벡터 스케치 합성. 코어: DiffVG (논문)
- IconShop - SIGGRAPH Asia 2023. SVG 경로를 토큰화해 오토리그레시브 트랜스포머로 텍스트 가이드 벡터 아이콘 합성. 코어: 토큰 생성(렌더링은 cairosvg) (논문)
- SVGDreamer - CVPR 2024. VPSD(벡터 입자 기반 score distillation)와 SIVE로 다양성·품질을 높인 텍스트→벡터 생성. 코어: DiffVG (논문)
- SVGDreamer++ (SVGDreamerV2) - T-PAMI 2025. 계층적 이미지 벡터화(HIVE)로 객체·컴포넌트 단위 편집성과 다양성을 강화. 코드 미공개 (논문)
- Text2SVG (Neural Path Representation) - SIGGRAPH 2024. 이중분기 VAE로 신경 경로 표현을 학습하고 확산모델 가이드(VSD)로 위상·시각 품질을 높임. 코어: DiffVG (논문)
- SVGCraft - WACV 2026. LLM 레이아웃 생성으로 단일 객체를 넘어 다중 요소 장면 전체를 텍스트→SVG로 합성. 코어: LLM 레이아웃 + DiffVG 최적화 (논문)
- VectorPainter - ICME 2025. 참조 이미지의 스트로크 스타일을 모방 학습으로 벡터화해 스타일화된 벡터 그래픽 합성. 코어: DiffVG (논문)
- SVGFusion - 2024. VP-VAE와 벡터공간 확산 트랜스포머(VS-DiT)로 SDS 없이 실제 SVG 데이터에 확장 가능한 텍스트→SVG. 코드 미공개 (논문)
- LLM4SVG - CVPR 2025. 학습가능한 시맨틱 토큰으로 LLM이 SVG를 이해·생성하도록 함. SVGX-Core-250k 등 대규모 데이터 공개. 코어: 없음(LLM 토큰 생성, 래스터화는 cairosvg) (논문)
- StarVector - CVPR 2025. 벡터화를 코드 생성으로 보는 비전-언어 파운데이션 모델. SVG-Stack(2M)·SVG-Bench 공개. 코어: 없음(SVG 코드 직접 생성, 평가용 cairosvg) (논문)
- Chat2SVG - CVPR 2025. LLM으로 시맨틱 SVG 템플릿을 만들고 이미지 확산모델로 경로를 정제하는 하이브리드 프레임워크. 코어: LLM + DiffVG(경로 최적화)
- NeuralSVG - ICCV 2025. NeRF에서 영감받아 장면 전체를 작은 MLP 가중치에 인코딩하고 SDS로 최적화하는 텍스트→벡터 암시적 표현. 코어: DiffVG (논문)
- OmniSVG - NeurIPS 2025. 사전학습 VLM 기반 최초의 종단간 멀티모달 SVG 생성 모델. MMSVG-2M 데이터셋 공개. 코어: 없음(SVG 토큰 직접 생성, PNG 저장용 cairosvg) (논문)
- CustomSVG (Style Customization of Text-to-Vector Generation) - SIGGRAPH 2025. 이미지 확산 프라이어로 텍스트→벡터 생성의 스타일을 커스터마이즈하는 2단계 파이프라인. 코어: DiffVG (논문)
- LayerTracer - 2025. 디자이너의 레이어별 제작 과정을 학습해 계층적 SVG를 합성하는 Diffusion Transformer. 코어: VTracer(래스터→SVG 트레이싱)
- Potrace - 다각형 기반 비트맵→벡터 트레이싱 도구. Inkscape의 Trace Bitmap 기반이자 벡터화 논문의 고전 baseline (GPLv2)
- autotrace - outline/centerline 트레이싱과 컬러 축소를 지원하는 비트맵→벡터 변환기 (C)
- VTracer - 컬러 고해상도 이미지를 지원하는 오픈소스 래스터→SVG 변환기 (Rust)
- Deep Vectorization of Technical Drawings - ECCV 2020. 정제·벡터화·정제·병합 단계로 기술 도면을 벡터 곡선·직선으로 변환하는 PyTorch 파이프라인. 코어: cairo(pycairo)
- LIVE (Layer-wise Image Vectorization) - CVPR 2022 Oral. 닫힌 베지어 경로를 점진적으로 추가·최적화하며 래스터 이미지를 레이어 단위로 벡터화. 코어: DiffVG(저장소에 번들)
- SAMVG - ICASSP 2024. Segment-Anything Model을 활용한 다단계(coarse-to-fine) 이미지 벡터화
- Optimize & Reduce (O&R) - AAAI 2024. 베지어 파라미터 최적화 후 중요도 기반으로 도형 수를 줄이는 Top-Down 이미지 벡터화. 코어: DiffVG
- SuperSVG - CVPR 2024. superpixel 분해와 coarse-path 유도 리파인먼트로 복잡한 이미지를 벡터화
- SGLIVE (Segmentation-guided Layer-wise Vectorization) - ECCV 2024. 그래디언트 인식 분할로 방사형 그래디언트 채움 베지어 경로를 점진 생성. 코어: DiffVG(포크 번들)
- Layered Image Vectorization via Semantic Simplification - CVPR 2025. 의미 정렬된 거시 구조에서 세부까지 계층적으로 래스터 이미지를 벡터화
- DeepVecFont - SIGGRAPH Asia 2021. 래스터 이미지와 벡터 윤곽의 이중 모달리티 학습으로 고품질 벡터 폰트 합성. 코어: DiffVG(테스트 단계 정제) (논문)
- DeepVecFont-v2 - CVPR 2023. Transformer로 길고 복잡한 벡터 아웃라인을 안정적으로 합성. 영문·중문 폰트 지원. 코어: cairosvg(렌더링) (논문)
- DualVector - CVPR 2023. 이중 파트(dual-part) 표현으로 글리프를 모델링하는 비지도 벡터 폰트 합성. 코어: DiffVG(수정판)
- VecFontSDF - CVPR 2023. 부호거리함수(SDF)로 글리프를 포물선 프리미티브로 모델링해 벡터 폰트를 재구성·합성
- VecFusion - CVPR 2024. 래스터+벡터 캐스케이드 확산 모델과 트랜스포머로 제어점까지 정밀하게 예측하는 벡터 폰트 생성 (Adobe/UMass)
- Word-As-Image for Semantic Typography - SIGGRAPH 2023. 글자 외곽선을 단어 의미에 맞게 최적화하는 시맨틱 타이포그래피 (DiffVG + Stable Diffusion)
- sketch-rnn - ICLR 2018. 스트로크 기반 벡터 스케치를 생성하는 seq2seq VAE (David Ha & Douglas Eck)
- CLIPasso - SIGGRAPH 2022 Best Paper. CLIP 지각 손실과 DiffVG로 객체 이미지를 추상화 수준을 조절하며 베지어 스케치로 변환 (논문)
- CLIPVG - AAAI 2023. DiffVG와 CLIP만으로 추가 생성 모델 없이 텍스트 기반 벡터 그래픽 조작
- Keyframer (Apple) - CHI 2024. LLM 코드 생성으로 정적 SVG를 자연어 프롬프트로 CSS 애니메이션하는 프로토타이핑 도구 (논문)
- LiveSketch (Breathing Life Into Sketches) - CVPR 2024 Highlight. text-to-video diffusion prior로 텍스트 프롬프트만으로 벡터 스케치에 모션 부여
- AniClipart - IJCV 2024. 키포인트 궤적을 큐빅 베지어로 매개변수화하고 ARAP 변형 + text-to-video prior로 클립아트 애니메이션. 코어: DiffVG (논문)
- SketchAgent - CVPR 2025. LLM으로 그리드 기반 스트로크 언어를 생성해 순차적 벡터 스케치를 그리는 대화형 에이전트 (MIT·Stanford)
- Dynamic Typography - ICCV 2025. video diffusion prior로 글자를 의미에 맞게 변형·애니메이션화하는 벡터 텍스트 애니메이션. 코어: DiffVG
- LogoMotion - CHI 2025 (Columbia+Adobe). 레이어드 로고 문서를 시각적 근거 기반 코드 합성·프로그램 수리로 분석해 콘텐츠 인지형 로고 애니메이션 코드를 생성하는 LLM 시스템. 코드 미공개
- MoVer - SIGGRAPH 2025 (Stanford). LLM이 생성한 SVG 모션 그래픽을 1차 논리 DSL로 검증하고 실패 항목을 LLM에 피드백해 반복 수정하는 파이프라인 (정답률 58.8%→93.6%)
- OmniLottie - CVPR 2026. 텍스트·이미지·비디오 지시로 Lottie JSON을 직접 생성하는 멀티모달 VLM 생성기. Lottie 토크나이저, 4B 모델, MMLottie-2M 데이터셋 공개. 코어: 없음(Lottie JSON 직접 생성)
- LottieGPT - CVPR 2026. Lottie JSON의 레이어·트랜스폼·키프레임을 압축 토큰화해 자기회귀 방식으로 벡터 애니메이션 생성. LottieAnimation-660K 데이터셋 구축. 코드 미공개
코딩 에이전트(Claude Code 등)가 SVG·Lottie를 직접 생성·조작하도록 하는 스킬과 MCP 서버들입니다.
-
anthropics/skills - Anthropic 공식 Agent Skills 저장소. 그래픽 관련으로
canvas-design(포스터·아트),algorithmic-art(p5.js 제너러티브 아트) 등을 포함 (SVG/Lottie 전용 스킬은 없음) -
text-to-lottie (diffusionstudio/lottie) - 코딩 에이전트가 자연어 프롬프트로 Lottie 애니메이션을 생성하는 오픈소스 스킬 프레임워크. 에이전트가 작성한
lottie.json을 내장 웹 플레이어로 실시간 미리보기. 코어: 없음(Lottie JSON 직접 생성) - LottieFiles/motion-design-skill - LottieFiles 공식 에이전트 스킬. 타이밍·이징·연출 등 모션 디자인 원칙을 에이전트에게 가르쳐 CSS/GSAP/Lottie 애니메이션 코드 품질을 높이는 원칙 스킬
-
Lottie Creator MCP - LottieFiles 공식 MCP 서버(
@lottiefiles/creator-mcp). AI가 브라우저의 LottieFiles Creator를 원격 조작해 Lottie를 생성·편집 - wiggle-claude-skill - 정적 로고(PNG/SVG/JPG)를 fade·bounce·wiggle 모션의 Lottie JSON으로 애니메이션화하고 GIF/MP4까지 렌더링하는 Claude Code 스킬
- lottie-animator-skill - SVG를 입력받아 키프레임·베지어 이징·레이어 페어런팅을 갖춘 Lottie JSON을 LLM이 직접 작성하게 하는 Claude 스킬
- svgmaker-mcp - 텍스트 프롬프트로 SVG를 생성·편집하고 이미지→SVG 변환까지 지원하는 MCP 서버 (외부 SVGMaker API 사용)
- mcp-server-lottiefiles - LottieFiles에서 키워드로 Lottie 애니메이션을 검색·조회하는 MCP 서버 (생성이 아닌 에셋 탐색용)
셸이나 바 자체는 벡터 포맷을 다루지 않지만, 화면에 그리는 일은 Cairo, Qt Quick 씬그래프, GTK/GSK 같은 벡터 그래픽스 스택에 위임하는 제품들입니다.
- Sway - i3 호환 Wayland 컴포지터. swaybar/swaynag를 cairo+pango로 렌더링
- swaybg - Wayland 배경화면 도구. 배경을 cairo 서피스로 렌더링
- swaylock - Wayland 화면 잠금 도구. 잠금 화면을 cairo로 렌더링
- hyprlock - Hyprland 화면 잠금 유틸리티. 잠금 화면을 cairo+pango로 렌더링
- i3 / i3bar - X11 타일링 윈도우 매니저. 창 장식과 i3bar를 cairo/pango로 렌더링
- Waybar - Sway/wlroots용 Wayland 바. GTK3(gtkmm) 기반, pango/cairo로 렌더링
- Polybar - X11 상태 바. 바 도형과 텍스트를 cairo로 직접 렌더링
- tint2 - 경량 X11 패널/태스크바. 패널 요소를 cairo/pangocairo로 렌더링
- eww (ElKowar's Wacky Widgets) - 윈도우 매니저 독립 위젯 시스템(Rust/GTK3). cairo 컨텍스트로 위젯 드로잉
- mako - 경량 Wayland 알림 데몬. 알림을 cairo+pango로 렌더링
- Conky - 경량 시스템 모니터. 내장 cairo 바인딩으로 Lua 드로잉
- Cairo-Dock (Glx-Dock) - Cairo/OpenGL로 렌더링하는 리눅스 데스크톱 독
- Quickshell - QtQuick으로 Wayland/X11 데스크톱 셸을 만드는 C++/QML 툴킷. UI를 Qt Quick 씬그래프로 렌더링 (GitHub 미러)
- caelestia shell - Quickshell 기반 Hyprland용 데스크톱 셸. 코드 대부분이 QML이며 Qt Quick 씬그래프로 렌더링
- DankMaterialShell - Quickshell(QML) UI + Go 백엔드로 만든 Wayland 데스크톱 셸. niri·Hyprland·Sway 등에서 바·알림·잠금화면을 통합 대체
- end-4/dots-hyprland - "illogical-impulse" Hyprland 도트파일. 상태바·사이드바 등 위젯을 Quickshell로 구현 (구 AGS 버전은 지원 종료)
- KDE Plasma Shell - KDE Plasma 데스크톱 셸. 패널과 위젯(플라즈모이드)이 QML로 작성되어 Qt Quick 씬그래프로 렌더링
- Astal - 데스크톱 셸 구축용 라이브러리 모음(Vala/C). GTK3(cairo)·GTK4(GSK) 위젯 라이브러리를 모두 제공
- AGS - Astal 기반 셸 프로젝트용 스캐폴딩 CLI. TypeScript/JSX로 GTK 위젯을 작성
- HyprPanel - Astal(GTK3, cairo 드로잉) 기반 Hyprland 패널 (TypeScript). 현재 유지보수 모드
- Ignis - Python으로 작성·설정하는 GTK4(GSK 렌더링) 기반 위젯 프레임워크. Layer Shell 지원 Wayland 컴포지터 대상
- ironbar - Rust로 작성된 GTK4(GSK 렌더링) 기반 Wayland 상태바. Sway·Hyprland 1차 지원
- Fabric - Python으로 위젯을 작성하는 GTK3(cairo 드로잉) 기반 데스크톱 위젯 시스템. X11·Wayland 모두 지원
- GNOME Shell - GNOME 데스크톱 셸. OpenGL 씬그래프 Clutter와 자체 툴킷 St로 UI를 그리며, 커스텀 드로잉은 cairo 컨텍스트를 사용
- Noctalia - Wayland 데스크톱 셸. v5부터 Qt/GTK 의존성 없이 Wayland + OpenGL ES 위에 직접 렌더링하는 자체 C++ 셸이며, 구 v4 라인은 Quickshell(QtQuick) 기반이었음 (FAQ)
- Inkscape - 오픈소스 벡터 그래픽 편집기. 화면 표시·PNG·PDF/PS 출력을 cairo로 렌더링
- GIMP - 이미지 편집기. 캔버스와 UI 드로잉을 cairo로 렌더링
- GTK - GNOME 데스크톱 위젯 툴킷. GTK3 위젯 렌더링을 cairo로 수행
- Pango - 텍스트 레이아웃/렌더링 라이브러리. PangoCairo 백엔드로 cairo 서피스에 렌더링
- Poppler - PDF 렌더링 라이브러리. cairo 백엔드로 PDF 페이지 렌더링 (공식 사이트)
- Evince - GNOME 문서 뷰어. PDF 등 문서 페이지를 cairo로 렌더링
- Scribus - 오픈소스 DTP 도구. 캔버스와 출력 렌더링에 cairo 사용
- Dia - GTK 기반 다이어그램 편집기. Cairo로 렌더링하고 SVG/EPS/PDF 벡터 출력 지원
- Matplotlib - 파이썬 플로팅 라이브러리. cairo 백엔드로 래스터/PDF/PS/SVG 렌더링
- mplcairo - Matplotlib용 cairo 백엔드. 플롯을 cairo로 그리고 복잡 텍스트는 Raqm 사용
- gnuplot - 그래프 플로팅 유틸리티. pngcairo/pdfcairo/wxt 터미널이 cairo로 렌더링
- Firefox / Gecko (historical) - Gecko가 2D 페인팅에 cairo를 사용하다 WebRender로 전환한 과정을 설명하는 Mozilla gfx 블로그
- Introducing Skia Graphite: Chrome's rasterization backend - Chrome의 Skia GPU 래스터화 백엔드를 Ganesh에서 Graphite로 전환. Metal/Vulkan/D3D12 활용
- LibreOffice - vcl/skia backend - LibreOffice VCL의 렌더링 백엔드로 Skia 채택. Vulkan/Metal/래스터 지원
- Mozilla Platform/GFX/Moz2D - Gecko의 Moz2D 그래픽 추상화가 지원하는 백엔드 중 하나로 Skia 포함
- Avalonia UI - Avalonia.Skia - .NET 크로스플랫폼 UI 프레임워크. SkiaSharp 기반 렌더링 백엔드
- React Native Skia - Skia를 React Native에 노출하는 고성능 2D 그래픽 라이브러리. Ganesh/Graphite 백엔드
- SkiaSharp - Skia 기반 .NET 크로스플랫폼 2D 그래픽 API. Windows/macOS/Linux/모바일/WASM 지원
- Microsoft.Maui.Graphics - .NET MAUI Graphics 라이브러리. SkiaSharp 기반 SkiaCanvas를 렌더링 백엔드로 제공
- Uno Platform - The Skia Renderer - C#/XAML 크로스플랫폼 프레임워크. Uno.Sdk 6.0부터 Skia 렌더러가 기본
- Slint - Rust/C++/JS/Python용 선언형 GUI 툴킷. Skia 렌더러를 옵션 백엔드로 제공
- Cobalt - Chromium/Blink 기반 경량 HTML5 플랫폼(TV·임베디드). Skia로 GPU 가속 렌더링
-
Veykril/blend2d-rs - Blend2D의 Rust 바인딩 (crates.io:
blend2d) - shiguredo/blend2d-py - Blend2D의 Python 바인딩. NumPy 연동
- neslib/DelphiBlend2D - Blend2D의 Delphi 언어 바인딩 및 프레임워크 (VCL·FireMonkey 연동)
- kdmult/bindbc-blend2d - Blend2D C API의 D 언어 정적/동적 바인딩
- LuizZak/swift-blend2d - Blend2D의 Swift 바인딩 (실험적)
- openpeeps/blend2d-nim - Blend2D의 Nim 언어 바인딩
- code3743/layer_canvas - Blend2D를 FFI로 사용하는 Dart/Flutter용 2D 컴포지팅 엔진
- DenizUgur/solarpaper - Blend2D로 태양계 시각화를 그려 바탕화면을 동적으로 갱신하는 앱
- rive-app/rive-react-native - iOS/Android 런타임을 감싼 공식 React Native 런타임
- rive-app/rive-bevy - Bevy 게임 엔진용 Rive 런타임 (Rust 코어, Vello 렌더링)
- rive-app/rive-tizen - 삼성 Tizen 플랫폼용 Rive 런타임. 렌더링에 ThorVG 사용
- basysKom/RiveQtQuickPlugin - Qt Quick(QML)에서 Rive 애니메이션을 렌더링하는 커뮤니티 플러그인
- Defold extension-rive - Defold 게임 엔진용 공식 Rive 확장
-
PaulieScanlon/rise-of-the-robots - Rive(
.riv) 애니메이션을 임베드한 Gatsby 오픈소스 웹사이트 -
zplata/plant-blog-rive - Rive(
.riv)를 활용한 Next.js·TailwindCSS 예제 블로그
- ThorVG Showcase - Canva iOS, Tizen, MorphOS, SEGGER, Crank Storyboard 등 채택 사례 공식 쇼케이스
- thorvg/thorvg.flutter - ThorVG 기반 공식 Flutter 런타임. 네이티브 Lottie 렌더링
- thorvg/thorvg.vscode - VS Code에서 Lottie·SVG를 실시간 미리보는 ThorVG Viewer 확장
- thorvg/thorvg.janitor - 전부 ThorVG로 렌더링한 Asteroids 스타일 인터랙티브 데모 게임
- LottieFiles/dotlottie-web - ThorVG(Rust+WASM) 코어 기반 LottieFiles 공식 웹 dotLottie 플레이어
- LottieFiles/dotlottie-rs - ThorVG 렌더링 엔진 기반 크로스플랫폼 dotLottie 런타임 (C/Kotlin/Swift/WASM FFI)
- LVGL Lottie Widget (lv_lottie) - ThorVG를 연동해 Lottie 애니메이션을 렌더링하는 LVGL 위젯
- espressif/thorvg (ESP Component Registry) - ESP-IDF용 ThorVG 공식 컴포넌트
- espressif2022/lottie_player - LVGL v8 + ThorVG 기반 임베디드용 경량 Lottie 애니메이션 플레이어
- Blender #148684: Library Proposal - ThorVG - NanoSVG를 대체해 ThorVG를 서드파티 라이브러리로 도입하려는 Blender 공식 제안
- godot-proposals #9104: Add Lottie support using ThorVG - Godot에 ThorVG 기반 Lottie 지원을 추가하자는 제안 (Godot은 이미 SVG에 ThorVG 사용 중)
- Kyooz/Lottie-godot - ThorVG를 백엔드로 Godot 4.3+에 Lottie를 통합하는 커뮤니티 플러그인
- Graphite: Year in review 2024 - 오픈소스 2D 에디터 Graphite가 기존 SVG 기반 렌더링을 Vello로 교체했음을 밝힌 공식 블로그
- linebender/bevy_vello - Bevy 게임 엔진용 벡터 그래픽 렌더링 통합. Vello로 씬·텍스트·SVG·Lottie를 UI/월드 공간에 렌더링
- Servo #38345: Tracking issue of Vello canvas backends - Servo 브라우저 엔진의 2D 캔버스 백엔드를 Vello(GPU)와 vello_cpu로 교체하는 공식 추적 이슈
- Blitz - Dioxus의 모듈형 HTML/CSS 렌더링 엔진. Vello 렌더러로 페인팅하고 텍스트 레이아웃은 Parley 사용
- Graphite - Rust 노드 기반 비파괴 2D 벡터/래스터 그래픽 에디터 (알파, Apache-2.0). 렌더링을 Vello로 전환
- Penpot - 오픈소스 디자인·프로토타이핑 플랫폼. SVG 기반, Rust/WASM 렌더러 도입 (MPL-2.0)
- Excalidraw - 손그림 스타일 오픈소스 화이트보드. Canvas + Rough.js, SVG/PNG 내보내기 (MIT)
- tldraw - 무한 캔버스 화이트보드 SDK. DOM 렌더링. 상용 사용 시 라이선스 키 필요
- Krita - 오픈소스 디지털 페인팅 SW. SVG 기반 벡터 레이어 지원 (GPL-3.0)
- LibreOffice Draw - LibreOffice의 오픈소스 벡터 드로잉 앱. SVG/PDF/Visio 입출력 (MPL-2.0)
- Glaxnimate - 오픈소스 벡터 애니메이션 에디터. Lottie/SVG/GIF/WebP 출력, Qt6 기반 (GPLv3, KDE 프로젝트로 이관됨)
- Synfig Studio - 오픈소스 벡터 기반 2D 애니메이션 SW. 키프레임 자동 보간, 자체 멀티스레드 렌더 엔진 "Cobra" 사용 (GPL-3.0)
- OpenToonz - 스튜디오 지브리 버전 기반 오픈소스 2D 애니메이션 SW. 벡터/비트맵 (Modified BSD)
- Pencil2D - 오픈소스 손그림 2D 애니메이션 툴. 비트맵·벡터 레이어, Qt(QPainter)로 캔버스 렌더링 (GPL-2.0)
- FontForge - TrueType/OpenType/PostScript 폰트의 벡터 아웃라인을 편집하는 오픈소스 폰트 에디터 (GPL-3.0)
- SVGO - Node.js 기반 SVG 최적화 도구. 플러그인 구조로 불필요 데이터 제거 (MIT)
- svgcleaner - Rust로 작성된 무손실 SVG 경량화 도구. resvg 저자 제작 (GPL-2.0)
- lottie-web - Airbnb의 Lottie 렌더러. After Effects 애니메이션(JSON)을 SVG/Canvas/HTML로 렌더링 (MIT)
- vpype - 펜 플로터 벡터 그래픽 처리용 CLI/Python 라이브러리. SVG 파이프라인과 HPGL 출력 (MIT)
- Manim Community - 수학 해설 영상용 Python 애니메이션 엔진(3Blue1Brown 계열 커뮤니티판). Cairo 렌더러로 장면을 래스터화
- Motion Canvas - 제너레이터로 애니메이션을 프로그래밍하는 TypeScript 라이브러리 + 실시간 프리뷰 에디터. 브라우저 Canvas 2D API로 렌더링
- Processing - Java 기반 크리에이티브 코딩 스케치북. Java2D 렌더러와 OpenGL 렌더러 내장
- p5.js - Processing을 웹으로 재해석한 크리에이티브 코딩 JS 라이브러리. WebGL·WebGPU 렌더링 모듈 포함
- MapLibre GL JS - 브라우저용 벡터 타일 지도 렌더링 라이브러리. WebGL2 기반, Mapbox GL JS 포크 (BSD-3)
- MapLibre Native - 모바일·데스크톱·서버용 벡터 타일 지도 렌더링 엔진 (C++, BSD-2)
- Mapnik - C++ 기반 오픈소스 지도 렌더링 툴킷. AGG로 서브픽셀 안티에일리어싱 래스터라이즈, OpenStreetMap 타일 렌더링에 널리 사용됨
- OpenLayers - GeoJSON, KML, 벡터 타일을 Canvas/WebGL로 렌더링하는 고성능 웹 지도 라이브러리
- D3.js - SVG/Canvas/HTML 기반 데이터 시각화 JS 라이브러리. 웹 표준 위에서 동적 벡터 생성 (ISC)
- Apache ECharts - Canvas와 SVG 렌더러를 모두 지원하는 인터랙티브 차트 라이브러리. 자체 2D 렌더러 ZRender 기반
- Vega - JSON으로 시각화를 기술하고 HTML5 Canvas 또는 SVG로 렌더링하는 선언적 시각화 문법
- Vega-Lite - Vega 명세를 생성하는 고수준 인터랙티브 그래픽 문법 (UW Interactive Data Lab)
- plotters - Rust 데이터 플로팅 라이브러리. SVG/비트맵/실시간 등 다중 백엔드 (MIT)
- Graphviz - DOT 언어로 기술한 그래프를 SVG/PDF/PostScript 벡터로 출력하는 그래프 시각화 소프트웨어. 비트맵 출력은 cairo+pango로 렌더링
-
Typst - LaTeX 대안을 표방하는 마크업 조판 시스템. 래스터 출력은
typst-render크레이트가 tiny-skia(+resvg)로 처리 - PDF.js - Mozilla의 웹 표준 기반 PDF 렌더링 플랫폼. PDF 페이지의 벡터 콘텐츠를 HTML Canvas 2D에 렌더링
- PDFium - Chromium의 PDF 파싱·래스터라이즈 라이브러리. 그래픽 엔진에 AGG 기반 디바이스 드라이버를 내장
비교적 오래되었지만 벡터 그래픽스의 근본적인 원리를 다루는 자료들입니다.
- A Primer on Bézier Curves (Pomax) - 베지어 곡선의 수학과 실무 기법을 인터랙티브 그래프로 설명하는 온라인 입문서 (소스 저장소)
- The Beauty of Bézier Curves (Freya Holmér) - 선형보간부터 드 카스텔조 알고리즘, 미분·접선·곡률까지 시각적으로 풀어낸 입문 영상
- The Continuity of Splines (Freya Holmér) - 에르미트·카디널·B-스플라인과 연속성(C0/C1/C2/G1/G2)을 다루는 스플라인 강의
- Computer Aided Geometric Design (Sederberg, BYU) - 베지어 곡선, B-스플라인, 블렌딩 함수를 다루는 CAGD 표준 무료 교재
- AGG Research - Adaptive Subdivision of Bézier Curves - 평탄도 기준에 따라 베지어 곡선을 선분으로 적응적 분할(플래트닝)하는 방법
- Secrets of smooth Béziers revealed - Euler spirals (Raph Levien) - 곡률 변화를 최소화하는 오일러 나선을 부드러운 곡선 표현으로 소개
- Cleaner parallel curves with Euler spirals (Raph Levien) - 오일러 나선 조각으로 커스프 없이 평행곡선(오프셋)을 구하는 스트로크 기법
- Parallel curves of cubic Béziers (Raph Levien) - 3차 베지어의 평행곡선 문제를 정확·강건·고속으로 푸는 스트로크-투-필 기법
- From Spiral to Spline: Optimal Techniques in Interactive Curve Design (Raph Levien, PhD thesis 2009) - 오일러 나선과 스플라인 보간을 활용한 곡선 설계의 이론과 수치 기법
- Diffusion Curves: A Vector Representation for Smooth-Shaded Images (Orzan et al., SIGGRAPH 2008) - 곡선 양쪽에 색을 정의하고 푸아송 방정식으로 확산시켜 부드러운 음영을 만드는 해상도 독립 벡터 표현의 고전 논문 (INRIA 공식 프로젝트 페이지)
- How the stb_truetype Anti-Aliased Software Rasterizer v2 Works (Sean Barrett) - 픽셀별 부호있는 사다리꼴 면적으로 커버리지를 계산하는 안티에일리어싱 래스터라이저 원리
- AGG Research - Gamma Correction - 안티에일리어싱 렌더링에서 감마 보정이 경계 두께와 품질에 미치는 영향
- AGG Research - Texts Rasterization Exposures - 폰트 래스터라이징과 RGB 서브픽셀 렌더링 관찰을 정리한 텍스트 렌더링 연구
- Optimizing Software Occlusion Culling (Fabian Giesen) - 에지 함수 기반 삼각형 래스터화와 커버리지 등 저수준 그래픽스 최적화 시리즈
- SVG fill-rule: nonzero vs evenodd (MDN) - nonzero(권선수)와 evenodd(홀짝) 채우기 규칙의 내부 판정 방식 차이
- Loop & Blinn - Resolution Independent Curve Rendering using Programmable Graphics Hardware (SIGGRAPH 2005) - 픽셀 셰이더로 곡선의 음함수 내외부 판정을 수행해 해상도 독립 곡선을 렌더링
- Loop & Blinn - Rendering Vector Art on the GPU (GPU Gems 3, Ch. 25) - 베지어 곡선을 implicit 형태로 변환해 GPU 픽셀 셰이더로 렌더링하는 실무 챕터
- Green - Improved Alpha-Tested Magnification for Vector Textures and Special Effects (Valve, SIGGRAPH 2007) - 부호있는 거리장(SDF)으로 저해상도 텍스처를 확대해도 매끈한 경계를 얻는 기법
- Nehab & Hoppe - Random-Access Rendering of General Vector Graphics (SIGGRAPH Asia 2008) - 셀 격자에 프리미티브를 인코딩해 GPU 픽셀 셰이더로 임의 접근 벡터 그래픽을 렌더링
- Kilgard & Bolz - GPU-accelerated Path Rendering (SIGGRAPH Asia 2012) - 스텐실 후 커버(Stencil-then-Cover) 방식으로 경로 채우기·스트로크를 GPU 가속
- Rougier - Shader-Based Antialiased, Dashed, Stroked Polylines (JCGT 2013) - 프래그먼트 셰이더에서 대시 패턴, 캡, 조인을 처리하는 안티에일리어싱 두꺼운 폴리라인 렌더링
- Ganacim et al. - Massively-Parallel Vector Graphics (SIGGRAPH Asia 2014) - shortcut tree 가속 구조로 샘플·픽셀을 대규모 병렬 처리하는 벡터 그래픽 래스터라이징
- Easy Scalable Text Rendering on the GPU (Evan Wallace) - Figma 공동창업자가 텍스처 캐시 없이 winding number로 글리프 커버리지를 계산하는 기법을 설명 (2016)
- GPU text rendering with vector textures (Will Dobbie) - 글리프를 격자로 나눠 각 셀의 베지어 곡선만 저장하고 픽셀 셰이더에서 커버리지를 계산
- Lengyel - GPU-Centered Font Rendering Directly from Glyph Outlines (JCGT 2017) - 텍스처나 SDF 없이 글리프 윤곽선에서 직접 안티에일리어싱 텍스트를 렌더링하는 Slug 알고리즘
- OpenType specification (Microsoft Typography) - 글리프 윤곽선과 폰트 테이블 구조를 정의하는 OpenType 폰트 포맷 공식 명세
- Scalable Vector Graphics (SVG) 1.1 (Second Edition) - W3C - 2D 벡터 그래픽을 XML로 기술하는 SVG 1.1 표준 권고안
- SVG 1.1 - Painting: Filling, Stroking and Marker Symbols - 채우기·스트로크 규칙과 nonzero/evenodd 판정을 규범적으로 정의한 장
- Scalable Vector Graphics (SVG) 2 - W3C - SVG 1.1을 확장·개선한 차세대 SVG 2 명세 (후보 권고안)
- HTML Canvas 2D context - WHATWG - 경로·채우기·스트로크·합성 등 캔버스 2D 렌더링 API를 규정한 공식 명세
- PDF 32000-1:2008 (ISO) - PostScript에서 유래한 해상도 독립 이미징 모델을 정의한 PDF 1.7 표준 원문
- OpenVG (Khronos) - 크로노스의 로열티 프리 2D 벡터 그래픽 하드웨어 가속 표준 API. 사양 소스는 공식 저장소에서 관리
- Fundamentals of Computer Graphics (Marschner & Shirley) - 래스터화·샘플링·스플라인 등 그래픽 기초를 다루는 표준 교재
- Computer Graphics: Principles and Practice, 3rd ed. (Hughes, van Dam et al.) - '컴퓨터 그래픽스의 바이블'로 불리는 종합 표준 교재
- Real-Time Rendering - 실시간 렌더링 표준 교재의 공식 사이트. 도서 정보, 그림 갤러리, 그래픽 논문 포털
- UC Berkeley CS184/284A - Computer Graphics and Imaging - 래스터화, 샘플링/에일리어싱, 스플라인·베지어를 다루는 강의 자료
- CMU 15-462/662 Scotty3D - 삼각형 래스터화·샘플링·보간을 직접 구현하는 컴퓨터 그래픽스 실습 프로젝트 문서
- Li, Hou & Zhou - Efficient GPU Path Rendering Using Scanline Rasterization (SIGGRAPH Asia 2016) - 스캔라인 래스터화를 GPU에 맞게 재설계한 경계 프래그먼트 기반 벡터 경로 렌더링
- Raph Levien - 2D Graphics on Modern GPU (2019) - GPU 컴퓨트로 2D 벡터를 직접 렌더링하는 아키텍처 제안
- Raph Levien - Fast 2D rendering on GPU (2020) - piet-gpu의 타일 기반 GPU 컴퓨트 파이프라인과 Cairo·Pathfinder 대비 성능 정리
- Polar Stroking: New Theory and Methods for Stroking Paths (Kilgard, SIGGRAPH 2020) - 접선각 균일 스텝으로 스트로크 영역을 근사하는 GPU 친화적 스트로킹 이론·기법
- GPU-friendly Stroke Expansion (Levien & Uguray, HPG 2024) - 스트로크 확장을 GPU 컴퓨트에서 병렬 처리하는 오일러 나선 기반 기법
- Ciallo: GPU-Accelerated Rendering of Vector Brush Strokes (SIGGRAPH 2024) - vanilla·stamp·airbrush 벡터 브러시 스트로크의 실시간 GPU 가속 렌더링
- Warnock: Harnessing GPU Geometry Amplification for Vector Graphics (HPG 2026) - polar stroking의 Mark Kilgard가 GPU 지오메트리 증폭으로 2D 벡터 그래픽스를 렌더링하는 새 라이브러리 발표 (2026.07)
- Vello - 렌더링 단계 전체를 GPU 컴퓨트 셰이더로 병렬화한 Rust 2D 렌더러 (piet-gpu의 후신)
- Sparse strip path rendering (vello#670) - Raph Levien의 차세대 경로 렌더링 설계 제안. 경계 픽셀만 안티에일리어싱하고 내부는 희소하게 표현하는 방식으로, vello_cpu/vello_hybrid의 이론적 토대
- Vello: high performance 2D graphics (RustLab 2023) - 컴퓨트 셰이더 파이프라인으로 구현된 Vello의 기술 구조를 다룬 Raph Levien 발표 영상
- Faster, easier 2D vector rendering (RustWeek 2025) - sparse strips 기반 렌더링을 다룬 Raph Levien의 후속 발표 영상
- Linebender 블로그 - Vello·sparse strips·SIMD 인프라 진행 상황을 연재하는 월간 업데이트(This Month in Linebender) 공식 블로그
- Linebender in 2026 Q1 - Vello Hybrid 베타 품질 도달, 글리프 캐싱 크레이트 Glifo 신설, Bevy의 Parley 채택 등 2026년 1분기 동향 (2026.04)
- Vello 릴리스 - Vello v0.9.0(wgpu 29, VARC 글리프)과 vello_cpu·vello_hybrid 0.0.9(sparse strips), Glifo 0.1 등 2026년 Q2 릴리스 묶음 (2026.05)
- Skia Graphite (Chromium Blog, 2025) - Ganesh를 대체하는 Skia의 차세대 GPU 백엔드. Metal/Vulkan/D3D12를 활용해 Chrome에 도입
- Flutter Impeller - 셰이더를 빌드 시점에 사전 컴파일해 런타임 셰이더 컴파일 잭을 제거한 Flutter 렌더링 엔진
- Rive Renderer - now open source (2024) - GPU 삼각형 래스터화로 벡터 경로를 렌더링하는 Rive Renderer 오픈소스 공개
- Reinventing feathering for the Vectorian era (2025) - Clockwise 필 규칙과 삼각형 커버리지 안티에일리어싱을 다룬 렌더러 심층 해설
- Spinel (Google Fuchsia) - Vulkan 1.2+ 타일 기반으로 전 파이프라인을 병렬화한 GPU 컴퓨트 벡터 그래픽 파이프라인
2번 섹션의 AI 연구 목록에 구현 저장소가 함께 정리되어 있습니다.
- VGBench - EMNLP 2024. SVG·TikZ·Graphviz 등 벡터 그래픽 이해·생성 능력을 평가하는 LLM 벤치마크 (논문)
- SVGEditBench - CVPR 2024 워크숍. LLM의 SVG 편집 능력을 6개 태스크로 정량 평가하는 벤치마크 (Twemoji 기반)
- SGP-Bench - ICLR 2025 Spotlight. LLM이 심볼릭 그래픽 프로그램(SVG·CAD)을 렌더 없이 이해하는지 평가 (논문)
- SVGenius - ACM MM 2025. SVG 이해·편집·생성 3개 차원, 24개 도메인 2,377개 쿼리로 LLM 22종을 평가한 종합 SVG 벤치마크
- VectorGym - 2026.03. StarVector 팀(ServiceNow)의 후속작. Sketch2SVG·다단계 편집·Text2SVG·캡셔닝 4개 태스크를 전문가 주석으로 벤치마크화, 커리큘럼 RL로 8B 모델 학습
- Reason-SVG - 2025.05. 'Drawing-with-Thought' 패러다임과 GRPO 강화학습으로 LLM의 구조적 SVG 추론을 강화
- SVGThinker - 2025.09. chain-of-thought 중간 추론으로 지시를 정확히 따르며 편집·계층 수정이 가능한 SVG를 생성
- InternSVG - ICLR 2026. SVG 이해·편집·생성을 하나의 MLLM으로 통합. 대규모 데이터셋 SAgoge와 벤치마크 SArena 공개 (GitHub)
- DuetSVG - 2025.12 (Adobe). 이미지 토큰과 SVG 토큰을 동시에 생성해 디코딩 중 시각 신호를 내재화하는 통합 멀티모달 SVG 생성
- Vector Prism - 2025.12 (KAIST). 파편화된 SVG 도형을 의미 단위로 재구조화해 VLM 기반 SVG 애니메이션 생성을 안정화
- VecGlypher - CVPR 2026. 텍스트 설명·이미지 예시로부터 래스터 중간 단계 없이 편집 가능한 벡터 글리프(SVG 패스)를 직접 생성하는 멀티모달 LLM
- IntroSVG - 2026.03. 하나의 VLM이 생성자·비평자 역할을 겸하며 렌더링 결과를 보고 "생성-검토-수정" 루프를 도는 내성적 Text-to-SVG
- VFIG - 2026.03. 기술 도표 래스터 이미지를 편집 가능한 SVG로 변환하는 VLM 패밀리. 66K figure-SVG 쌍 데이터셋 포함
- AmodalSVG - 2026.04. VLM 유도 시맨틱 레이어 필링으로 가려진 부분까지 복원하며 이미지를 레이어드 SVG로 벡터화
- Render-in-the-Loop - 2026.04. SVG 코드를 점진적으로 캔버스에 렌더링하며 시각 피드백을 보고 그리는 생성 프레임워크
- GeoSVG-RL - 2026.05. 브라우저 기반 검증기가 렌더링 유효성·앵커 정확도 등 6개 기하 척도로 보상을 주는 GRPO 강화학습 다이어그램 SVG 생성
- NIV: Neural Axis Variations for Variable Font Generation - 2026.06. 정적 폰트를 weight·width·slant 연속 축을 가진 가변 폰트로 자동 변환하는 신경망. CJK·손글씨까지 일반화
- Lottie Animation Community (LAC) - Linux Foundation(JDF) 산하 Lottie 포맷 표준화 커뮤니티 공식 사이트
- Lottie v1.0 specification 발표 (Linux Foundation, 2024) - Lottie JSON 포맷 v1.0 사양 공개. 개방형 표준화 이정표
-
dotLottie v1.0 Specification - Lottie JSON과 이미지 에셋을 ZIP(
.lottie) 번들로 묶는 포맷 사양 - CSS Painting API Level 1 - W3C - JS 워클릿과 Canvas 2D로 CSS 커스텀 이미지를 그리는 Houdini Paint API 사양
벡터 그래픽스의 애니메이션 기법(모핑/셰이프 블렌딩, 스켈레탈·캐릭터·표정 애니메이션)과 3D 표현, 물리 효과에 관한 자료입니다. 3D의 블렌드 셰이프/버텍스 애니메이션에 해당하는 개념이 벡터 그래픽스에서는 경로 제어점 보간(셰이프 인터폴레이션)으로 나타납니다.
- flubber - 대응점이 맞지 않는 SVG 경로/폴리곤 쌍 사이를 자연스럽게 보간(모핑)하는 JS 라이브러리. d3와 함께 사용 가능, 다중 도형 분리·병합 지원 (2022년 이후 업데이트 없음)
-
d3-interpolate-path - 점 개수가 서로 다른 SVG 경로
d속성을 보간하는 d3 플러그인. De Casteljau 분할로 점 개수를 맞춘 뒤 보간 -
CSS
d프로퍼티 (MDN) - SVG<path>의d를 CSS로 지정·전환하는 공식 문서. 명령 구조가 같은 경로끼리 transition으로 모핑하는 예제 포함 -
SVG
<animate>요소 (MDN) - SVG 속성값을 시간에 따라 선언적으로 보간하는 SMIL 애니메이션 요소 공식 레퍼런스 - Lottie 포맷 명세 - Properties - Lottie 공식 규격의 애니메이터블 속성 정의. 베지어 셰이프 키프레임과 이징 핸들 기반 경로 모핑을 포맷 차원에서 지원
- Pose Animator - TensorFlow.js의 PoseNet·FaceMesh로 웹캠에서 몸·얼굴을 추적해 SVG 벡터 캐릭터의 본(bone) 계층을 실시간으로 움직이는 브라우저 데모. 표정(얼굴 메시) 추적 포함 (유지보수 중단)
- Synfig 공식 매뉴얼 - Skeleton Layer - Synfig 본 시스템 공식 문서. 부모-자식 본 계층에 벡터 정점을 연결(Link to Bone/Skeleton)해 컷아웃 애니메이션 구현
- Rive 공식 문서 - Bones - 본 생성·체인 구성과 벡터 경로 바인딩 문서. 정점별 본 가중치로 벡터 셰이프를 스켈레탈 변형
- Rive 공식 문서 - Constraints - IK·거리·트랜스폼 등 6종 제약으로 리깅을 제어하는 문서. 시선 추적, 발 고정(IK) 등 캐릭터 리깅 예시 포함
- enve - 벡터·래스터를 함께 다루는 오픈소스 2D 애니메이션 앱 (C++, GPL-3.0). 2026년 2월 아카이브됨
- VPaint - Vector Animation Complex 연구를 구현한 실험적 벡터 드로잉·2D 애니메이션 에디터. 해상도 독립 드로잉과 애니메이션 지원 (연구용 베타)
- VGC - VPaint 개발자의 후속 프로젝트 (vgc.io, Apache-2.0). 선·면의 연결성을 공간·시간 양쪽에서 유지해 편집과 인비트위닝을 빠르게 하는 것이 목표 (알파)
- Ruffle - Rust로 작성된 Adobe Flash Player 에뮬레이터. 고전 벡터 애니메이션 포맷 SWF(셰이프 트윈 포함)를 데스크톱과 웹(WASM)에서 재생
- A Physically Based Approach to 2-D Shape Blending (SIGGRAPH 1992) - Sederberg & Greenwood. 물리 기반 변형 에너지 최소화로 두 2D 셰이프의 정점 대응을 구하는 셰이프 블렌딩 고전 논문
- As-Rigid-As-Possible Shape Interpolation (SIGGRAPH 2000) - Alexa, Cohen-Or & Levin. 보간 중간 형태가 최대한 강체에 가깝게 유지되는 ARAP 셰이프 보간의 원조 논문
- As-Rigid-As-Possible Shape Manipulation (SIGGRAPH 2005) - Igarashi, Moscovich & Hughes. 스켈레톤 없이 핸들 드래그만으로 2D 셰이프를 강체성 보존 변형하는 실시간 기법 (저자 공식 페이지)
- Vector Animation Complex (SIGGRAPH 2015) - Dalstein, Ronfard & van de Panne. 도형이 시간에 따라 합쳐지고 갈라지는 위상 변화를 키프레임으로 다루는 벡터 애니메이션 자료구조. VPaint/VGC의 이론적 기반
- three.js SVGLoader - SVG 경로를 파싱해 three.js Shape로 변환하는 공식 로더. ExtrudeGeometry와 조합해 2D 벡터를 3D 씬에 배치하거나 돌출 가능
- three.js SVG 로더 공식 예제 - SVG 파일을 WebGL 씬 안의 벡터 셰이프 메시로 렌더링하는 공식 데모
- svg-mesh-3d - SVG path 문자열을 삼각분할된 3D 메시로 변환하는 JS 모듈. three.js·stackgl에서 바로 사용 가능
- Blender 매뉴얼: SVG 임포트 - SVG를 커브 오브젝트로 가져오는 공식 문서. 가져온 커브를 돌출시켜 3D 모델로 만드는 표준 워크플로의 출발점
- Blender 매뉴얼: Grease Pencil - 스트로크를 3D 공간에 배치하는 드로잉 오브젝트. 2D 애니메이션·모션 그래픽이 3D 씬 속에 공존하는 대표 사례
- Robust Planar Maps for 3D Vectorization (SIGGRAPH 2026 Best Paper) - CMU Fuchs & Crane. 3D 장면을 겹침 없는 2D 벡터 이미지(SVG)로 변환하기 위한 planar map을 강건·고속으로 구축하는 기법 (2026.05)
벡터/2D 장면에 물리 기반 모션을 더할 때 쓰는 엔진과 기법입니다.
- Box2D - Erin Catto의 게임용 2D 물리 엔진 사실상 표준. 강체·조인트·충돌 감지 제공 (C, MIT)
-
Rapier - Rust로 작성된 성능 중심 2D/3D 물리 엔진. 2D용
rapier2d크레이트 별도 제공 - Matter.js - 웹용 JavaScript 2D 강체 물리 엔진. 내장 Canvas 렌더러로 시뮬레이션을 바로 그릴 수 있음
- Planck.js - Box2D를 JavaScript/TypeScript로 재작성한 HTML5용 2D 물리 엔진
- Position Based Dynamics (VRIPhys 2006) - Müller 등. 힘/속도 대신 위치를 직접 투영해 천·연체 등을 안정적으로 시뮬레이션하는 기법. 실시간 그래픽스 물리의 기반 논문
- Rive Scripting - Rive 공식 블로그(2026.01). 스크립팅으로 중력·충돌·관성·스프링 제약·세컨더리 모션 등 물리 효과를 벡터 애니메이션에 구현할 수 있음을 소개