한국어
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 86887
19 하드디스크 드라이브 여유 공간 계산 file makersweb 2023.01.15 633
18 QML과 코루틴(Coroutines) makersweb 2020.11.03 626
17 응용프로그램 자동실행 설정 (on Windows) makersweb 2021.05.08 610
» QtQuick 애플리케이션에 Rive 애니메이션 통합 makersweb 2024.03.31 598
15 Qt Safe Renderer 개요 file makersweb 2022.09.08 598
14 Base64로 인코딩된 파일을 복원 makersweb 2023.08.06 575
13 성능 고려 및 제안 사항 makersweb 2022.03.07 564
12 안드로이드용 Qt 6.2 makersweb 2021.10.02 556
11 앱을 종료할 때 QML 바인딩 오류를 피하는 방법 makersweb 2021.08.08 548
10 Qt Creator 에서 GitHub Copilot 사용하기 file makersweb 2024.04.13 539
9 VirtualKeyboard 스타일 커스터 마이징 makersweb 2022.03.13 537
8 Qt Quick Controls 2에 네이티브 데스크탑 스타일 추가 file makersweb 2020.11.23 527
7 Binding 타입으로 객체 속성 간 묶기 makersweb 2022.03.04 472
6 그래픽 소프트웨어에서 디자인 내보내기 (Exporting Designs from Graphics Software) j2doll 2020.12.25 442
5 Qt Android 앱에 AdMob 배너달기 file makersweb 2021.12.04 436
4 HTTPS URL을 연결할 때 SslHandshakeFailedError 오류 makersweb 2022.07.31 412
3 Qt 6.4에 추가될 Qt Quick 3D Physics file makersweb 2022.08.07 395
2 Qbs 프로젝트를 정의하기 위해 사용되는 몇가지 중요한 아이템들 file makersweb 2019.10.13 332
1 Qt 응용프로그램에 Web 구성 요소를 표시 with Servo file makersweb 2024.04.27 299