한국어
Qt
 

Rive는 대화형 벡터 애니메이션을 만들 수 있는 이미지 파일 형식이다. Rive와 비교하여 로티(Lottie) 에는 몇 가지 단점이 있다.

  • Lottie 파일은 실행 시 저장소와 메모리 모두에서 상당히 큰 경향이 있다. 이는 특히 임베디드 장치에서 문제가 될 수 있다.
  • Lotie는 소프트웨어 개발자의 개입 없이 대화형 애니메이션을 만드는 것은 불가능하다.

RiveQtQuickPlugin

RiveQtQuickPlugin 은 QtQuick 프로젝트 내에서 Rive 애니메이션을 쉽게 로드하고 표시할 수 있는 플러그인 라이브러리다. BasysKom에서 rive-cpp 라이브러리를 기반으로 QtQuick 통합하기 위해 이 오픈소스 프로젝트를 시작했다. BasysKom은 현재 계속 QtQuickPlugin을 작업 중이지만 이미 QtQuick/QML 애플리케이션에 다음 기능을 제공한다.

Rive 및 Qt 의 빠른 통합
간단한 QML 유형을 사용하여 QtQuick/QML 애플리케이션에서 Rive 애니메이션을 가져오고 조작할 수 있다.

Dynamic Interaction
Rive 애니메이션의 도움으로 사용자 상호작용에 반응하여 생동감 넘치는 사용자 인터페이스를 만든다. Rive 애니메이션은 마우스 호버나 터치 이벤트에 직접 반응할 수 있으므로 개발자가 아무것도 구현할 필요가 없다.

주요 Qt 버전 및 플랫폼 지원
소프트웨어 및 하드웨어 렌더링이 포함된 Qt5.15.2+
소프트웨어 및 하드웨어 렌더링이 포함된 Qt6.5+

QtQuick/QML 애플리케이션에서 다음과 같이 간편하게 Rive 애니메이션을 표시할 수 있다.

import QtCore
import QtQuick
import QtQuick.Layouts
import QtQuick.Controls
 
import RiveQtQuickPlugin

...
        RiveQtQuickItem {
            id: riveItem
            anchors.fill: parent
            fillMode: RiveQtQuickItem.PreserveAspectFit
 
            // not used by software backend
            renderQuality: RiveQtQuickItem.Medium
            postprocessingMode: RiveQtQuickItem.SMAA
 
            fileSource: ":/assets/travel-icons-pack.riv"
        }
...

플러그인은 LGPLv3+로 출시되었으며 현재 작업 중인 일이 몇 가지 있다.

  • 하드웨어 렌더링을 위한 앤티앨리어싱
  • 외부 Rive-Library로 GCC 지원
  • QML 인터페이스 개선
  • 플러그인 문서(QML에 대한 인터페이스가 양호한 상태인 경우)
번호 제목 글쓴이 날짜 조회 수
공지 Qt프로그래밍(QtQuick) Beginner를 위한 글 읽는 순서 운영자 2019.01.05 86178
19 Qt의 스레드간 시그널 슬롯의 커넥션타입 [1] makersweb 2015.10.24 10218
18 Ubuntu Linux에서 Qt Creator 설치 file makersweb 2016.03.06 10681
17 Qt 응용프로그램 배포(windows) file makersweb 2018.10.10 11386
16 Qt Installer Framework - 패키징, 설치프로그램 제작 file makersweb 2018.10.14 11696
15 QtSerialPort를 사용한 시리얼(Serial)통신 [3] makersweb 2019.05.21 11975
14 Qml 기본 컴포넌트 강좌 (1) file makersweb 2019.01.03 12121
13 Qt의 오픈소스 라이센스 소개 file makersweb 2019.12.15 12622
12 Windows에서 라즈베리파이3용 Qt5.10.0 크로스컴파일 [20] file makersweb 2018.02.23 13046
11 QML과 QtQuick 모듈 개념과 기본 타입들 makersweb 2019.04.26 13439
10 Qml과 C++로 구현하는 GUI어플리케이션 file makersweb 2018.12.25 14006
9 Qt 프로그래밍의 시작 makersweb 2015.10.25 14406
8 초보자를 위한 첫번째 프로젝트 - QML로 만드는 Hello World file makersweb 2018.03.16 14518
7 QtCreator Design으로 GUI만들기 (QML로 만드는 Hello World -2) [1] file makersweb 2019.05.26 14979
6 QThread 소개 및 예제 makersweb 2019.12.25 19587
5 Qt의 시그널 슬롯 시스템 file makersweb 2015.10.20 23674
4 Windows에서 Qt 설치 따라하기 file makersweb 2019.10.14 30930
3 QString 문자열 다루기 예제 운영자 2019.01.26 40346
2 콘솔에서 사용자 입력받기 file makersweb 2020.03.22 51858
1 가상키보드(Qt Virtual Keyboard)를 사용하는 방법 [32] file makersweb 2019.05.03 221871