토르 벡터 그래픽스

토르 벡터 그래픽스
ThorVG
원저자박춘언 (Hermet Park)
개발자ThorVG 팀, 삼성전자, LottieFiles
발표일2021년 5월(4년 전)(2021-05)
안정화 버전
0.15 / 2024년 10월(9개월 전)(2024-10)
저장소github.com/thorvg/thorvg
프로그래밍 언어C++
운영 체제크로스 플랫폼
크기150kb (최소 크기)
종류렌더링 엔진
라이선스MIT 허가서
웹사이트www.thorvg.org

토르 벡터 그래픽스(Thor Vector Graphics) 또는 토르VG(ThorVG)는 오픈 소스 라이브러리 (컴퓨팅)SVG로티 같은 벡터 그래픽스 기반의 모션 그래픽스애니메이션을 구현하는 기능을 제공한다. 호환성이식성을 고려하여 다양한 종류의 컴퓨팅 플랫폼응용 소프트웨어에서 사용할 수 있다.[1][2][3]

ThorVG 엔진으로 구동한 로티 애니메이션

ThorVG는 웹어셈블리 기술을 활용해 웹 플랫폼에서 그래픽 출력을 지원하며[4], CPU 뿐만 아니라 OpenGL, WebGL, 웹GPU와 같은 다양한 그래픽스 출력 장치를 통해 하드웨어 가속을 지원한다.

기능 특징

  • 장면 그래프 및 경로 렌더링: ThorVG는 두 가지 주요 렌더링 기능을 지원. 장면 그래프는 사용자가 계층 구조의 그릴 수 있는 객체들을 생성하고 조작할 수 있게 해주며, 경로 기반 인터페이스는 벡터 도형과 경로를 직접 그릴 수 있도록 한다.
  • 변환(Transformations): 그래픽 객체에 대해 평행 이동, 스케일링, 회전 등의 아핀 변환을 지원
  • 색상 그라디언트: 더욱 표현력 있는 시각 디자인을 위해 선형 및 방사형 그라디언트를 지원
  • 안티 앨리어싱: 렌더링된 출력에서 시각적 노이즈를 줄이기 위한 부드럽게 처리하는 기술을 포함
  • 멀티스레드 및 비동기 렌더링: 렌더링 작업을 여러 스레드에 걸쳐 스케줄링할 수 있어, 멀티코어 시스템에서 성능 향상
  • 백엔드 추상화: 소프트웨어, OpenGL, WebGL, WebGPU 지원
  • 포맷 지원: SVG, LOT, PNG, JPEG, WebP, TTF, TVG (ThorVG 전용 포맷)

로티 애니메이션 지원

ThorVG는 Bodymovin 플러그인을 통해 어도비 애프터 이펙트에서 내보낸 JSON 기반 애니메이션 포맷인 Lottie(파일 형식) 애니메이션 렌더링 기능을 포함하고 있다. 이를 통해 개발자는 특히 효율성이 중요한 임베디드 장치의 사용자 인터페이스에서 복잡하면서도 가벼운 벡터 애니메이션을 손쉽게 통합할 수 있다.[5] Canva 개발팀은 기존 Canva iOS 애플리케이션에서 삼성의 rlottie 엔진을 ThorVG로 대체한 후, Lottie 애니메이션 성능이 약 70 ~ 80% 향상되었다는 테스트 결과를 공유한 바 있다.[6]

호환 시스템

ThorVG 적용 소프트웨어

주요 역사

  • 2020년 - 박춘언은 ThorVG의 첫 프로토타입을 완성했다. ‘토르(Thor)’라는 이름은 ‘천둥 같은 힘’과 ‘번개 같은 속도’를 동시에 상징하며 이를 통해 강력하고 빠른 성능을 함께 표현하고자 했다.[12]
  • 2021년 - ThorVG는 TizenVG라는 이름으로 타이젠 프로젝트에 추가됐다.[13] 고도 (게임 엔진)는 ThorVG를 통합했다.[14]
  • 2022년 - Peter Vullings가 새로운 디자인(현 로고)을 기여하면서 공식 로고는 교체됐다.[15]
  • 2023년 - 로티 (파일 형식) 을 지원하기 시작했고[16] LVGL 프레임워크는 ThorVG를 통합했다.[17]
  • 2024년 - 웹GPU 백엔드를 지원하기 시작했다.[18] dotlottie 프로젝트는 코어 엔진으로서 ThorVG를 탑재했다.[19]
ThorVG 로고 디자인의 최초 프로토타입
ThorVG 로고 디자인 프로토타입

릴리즈 정보

  • ThorVG v0.1: May 1, 2021[20]
  • ThorVG v0.2: Jun 5, 2021[21]
  • ThorVG v0.3: Jul 3, 2021[22]
  • ThorVG v0.4: Aug 9, 2021[23]
  • ThorVG v0.5: Sep 24, 2021[24]
  • ThorVG v0.6: Nov 3, 2021[25]
  • ThorVG v0.7: Dec 23, 2021[26]
  • ThorVG v0.8: Mar 8, 2022[27]
  • ThorVG v0.9: May 9, 2023[28]
  • ThorVG v0.10: Jul 31, 2023[29]
  • ThorVG v0.11: Sep 28, 2023[30]
  • ThorVG v0.12: Jan 4, 2024[31]
  • ThorVG v0.13: Apr 9, 2024[32]
  • ThorVG v0.14: Jun 27, 2024[33]
  • ThorVG v0.15: Oct 6, 2024[34]

같이 보기

외부 링크

각주

  1. “About - ThorVG” (영어). 2023년 12월 8일에 확인함. 
  2. “Unlocking the Power of ThorVG: A Guide to Lightweight 2D Vector Graphics” (영어). 2023년 12월 8일에 확인함. 
  3. “Introducing ThorVG: A Powerful Graphics Library for Lottie Animation” (영어). 2023년 12월 8일에 확인함. 
  4. "그래픽 엔진 포팅 사례로 배우는 웹어셈블리 웹 컴포넌트 개발부터 디버깅, 최적화까지│인프콘2024"
  5. “Lottie Implementations” (영어). 2025년 4월 20일에 확인함. 
  6. “Canva Enhances iOS Lottie Rendering: 80% Faster and 70% More Efficient with ThorVG” (영어). 2024년 7월 7일에 확인함. 
  7. “@thorvg/lottie-player” (영어). 2025년 3월 28일. 2025년 4월 2일에 확인함. 
  8. “espressif/thorvg • v0.13.8 • ESP Component Registry” (영어). 2025년 4월 2일에 확인함. 
  9. pvigier (2023년 1월 16일). “Coat of Arms Generator for my game Vagabond”. 2023년 12월 8일에 확인함. 
  10. “Syrah - Credits”. 2024년 7월 1일에 확인함. 
  11. “Version 1.0.2 released – Paragraphic” (미국 영어). 2025년 3월 6일. 2025년 3월 31일에 확인함. 
  12. ThorVG의 상징적 의미는 공식 가이드 문서에서 찾아볼 수 있다.
  13. “Tizen 6.5 Public M1”. 2025년 4월 21일에 확인함. 
  14. Looking at Godot 4.2.2 and 4.1.4 | Maintenance Release
  15. “Feature/new logo by projectitis · Pull Request #1215 · thorvg/thorvg” (영어). 2025년 4월 19일에 확인함. 
  16. “Release ThorVG v0.10.0 · thorvg/thorvg” (영어). 2025년 4월 21일에 확인함. 
  17. kisvegabor (2023년 11월 21일). “v9 schedule, ESP32-S3-BOX-3, and a cool project” (영어). 2025년 4월 21일에 확인함. 
  18. “The Best of WebGPU of February 2024” (영어). 2024년 9월 7일에 확인함. 
  19. DotLottie Player – A New Universal Lottie Player Built with Rust
  20. “Release ThorVG v0.1.0 · thorvg/thorvg”. 《GitHub》 (영어). 2023년 12월 8일에 확인함. 
  21. “Release ThorVG v0.2.0 · thorvg/thorvg”. 《GitHub》 (영어). 2023년 12월 8일에 확인함. 
  22. “Release ThorVG v0.3.0 · thorvg/thorvg”. 《GitHub》 (영어). 2023년 12월 8일에 확인함. 
  23. “Release ThorVG v0.4.0 · thorvg/thorvg”. 《GitHub》 (영어). 2023년 12월 8일에 확인함. 
  24. “Release ThorVG v0.5.0 · thorvg/thorvg”. 《GitHub》 (영어). 2023년 12월 8일에 확인함. 
  25. “Release ThorVG v0.6.0 · thorvg/thorvg”. 《GitHub》 (영어). 2023년 12월 8일에 확인함. 
  26. “Release ThorVG v0.7.0 · thorvg/thorvg”. 《GitHub》 (영어). 2023년 12월 8일에 확인함. 
  27. “Release ThorVG v0.8.0 · thorvg/thorvg”. 《GitHub》 (영어). 2023년 12월 8일에 확인함. 
  28. “Release ThorVG v0.9.0 · thorvg/thorvg”. 《GitHub》 (영어). 2023년 12월 8일에 확인함. 
  29. “Release ThorVG v0.10.0 · thorvg/thorvg”. 《GitHub》 (영어). 2023년 12월 8일에 확인함. 
  30. “Release ThorVG v0.11.0 · thorvg/thorvg”. 《GitHub》 (영어). 2023년 12월 8일에 확인함. 
  31. “Release ThorVG v0.12.0 · thorvg/thorvg”. 《GitHub》 (영어). 2023년 4월 9일에 확인함. 
  32. “Release ThorVG 0.13.0 · thorvg/thorvg” (영어). 2024년 4월 9일에 확인함. 
  33. “Release ThorVG v0.14.0 · thorvg/thorvg” (영어). 2024년 6월 28일에 확인함. 
  34. “Release ThorVG v0.15 · thorvg/thorvg” (영어). 2024년 10월 6일에 확인함. 
Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9

Portal di Ensiklopedia Dunia

Kembali kehalaman sebelumnya