Rive는 대화형 벡터 애니메이션을 만들 수 있는 이미지 파일 형식이다. Rive와 비교하여 로티(Lottie) 에는 몇 가지 단점이 있다.
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+로 출시되었으며 현재 작업 중인 일이 몇 가지 있다.
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
공지 | Qt프로그래밍(QtQuick) Beginner를 위한 글 읽는 순서 | 운영자 | 2019.01.05 | 86178 |
8 | QML 에서 QR코드 생성 | makersweb | 2021.08.20 | 897 |
7 | QML 코딩 규칙 | makersweb | 2021.09.05 | 3275 |
6 | QML에서 Websocket 서버와 통신 | makersweb | 2021.09.18 | 834 |
5 | QML에서 앵커(anchors)로 위치 지정 | makersweb | 2021.10.05 | 3881 |
4 | Binding 타입으로 객체 속성 간 묶기 | makersweb | 2022.03.04 | 428 |
3 | OpacityMask 예제 | makersweb | 2023.01.26 | 657 |
2 | QML에서 D-Bus 통신 | makersweb | 2023.03.15 | 712 |
» | QtQuick 애플리케이션에 Rive 애니메이션 통합 | makersweb | 2024.03.31 | 486 |