본문 바로가기
RV

Open RV 패키지 시스템 가이드 (사용자 매뉴얼 10장 요약)

by 르면가게 2025. 2. 9.

🔹 Open RV 패키지 시스템이란?

RV는 기능을 확장하거나 커스터마이징할 수 있도록 패키지 시스템을 지원합니다.

패키지는 소스 코드 또는 바이너리를 포함한 ZIP 파일(.rvpkg 확장자) 형태로 제공되며, 이를 통해 RV의 기능을 쉽게 추가하거나 제거할 수 있습니다.

RV 패키지의 주요 특징

  • 기능 확장 가능 – 사용자 정의 UI, 플러그인, 자동화 기능 추가
  • 자동 설치/삭제 지원 – 복잡한 설정 없이 패키지를 관리 가능
  • RV 내부 코드도 일부 패키지 형태로 제공 – 예: 원격 동기화 기능

RV 패키지 예시

  • 자동 윈도우 타이틀 변경
  • 주석(Annotation) 기능 추가
  • Nuke 스타일의 파일 처리 기능 추가
  • OCIO(OpenColorIO) 컬러 매니지먼트 지원

1️⃣ 패키지 설치 및 관리 방법

🔹 RV 패키지 관리 도구 사용하기

  1. RV 환경설정(Preferences) → "Packages" 탭으로 이동
  2. 설치된 패키지 목록을 확인 가능
  3. 패키지 추가/제거 버튼을 이용하여 패키지 관리

숨겨진 패키지 보기

일부 패키지는 기본적으로 숨겨져 있으므로 "Show Hidden Packages" 옵션을 활성화하면 전체 패키지를 볼 수 있음


2️⃣ 패키지 경로 및 저장 위치

RV 패키지는 특정 디렉터리에 저장되며, 운영체제별 기본 경로는 다음과 같습니다.

운영체제  기본 경로
macOS ~/Library/Application Support/RV
Linux ~/.rv
Windows %APPDATA%/RV

RV의 RV_SUPPORT_PATH 환경 변수를 설정하면 기본 경로를 변경 가능

export RV_SUPPORT_PATH="/custom/path/to/RV"

🔹 패키지가 저장되는 디렉터리 구조

RV는 패키지 관련 파일을 다음과 같은 서브디렉터리 구조로 관리합니다.

 

디렉터리 설명
Packages/ 패키지 .rvpkg 파일 저장
ConfigFiles/ 패키지가 사용하는 설정 파일 저장
ImageFormats/ 이미지 포맷 플러그인 저장
MovieFormats/ 동영상 포맷 플러그인 저장
Mu/ Mu 스크립트 패키지 저장
Output/ 오디오/비디오 출력 플러그인 저장
MediaLibrary/ 미디어 라이브러리 플러그인 저장
Python/ Python 기반 패키지 저장
SupportFiles/ 패키지에서 사용하는 추가 파일 (아이콘, 텍스처 등)
lib/ 패키지에서 사용하는 공유 라이브러리

RV 실행 시, 지원 경로에 있는 패키지를 자동으로 로드함


3️⃣ 패키지 설치 및 제거 방법

🔹 패키지 추가(설치)

  1. RV 환경설정(Preferences) → "Packages" 탭으로 이동
  2. "Add Packages..." 버튼 클릭
  3. .rvpkg 패키지 파일을 선택하여 추가

설치된 패키지는 체크박스를 활성화하면 로드됨

🔹 패키지 제거(삭제)

  1. "Remove" 버튼을 클릭하여 패키지 제거 가능
  2. 패키지 로드를 비활성화하려면 체크박스를 해제

패키지를 삭제해도 설정 파일(ConfigFiles/)은 남아 있을 수 있음

🔹 패키지 설치 후 주의사항

  • RV를 다시 시작해야 변경 사항이 적용됨
  • 관리자 권한이 필요한 경우가 있음 (시스템 전체 적용 시)

4️⃣ 패키지 간 의존성 관리

RV 패키지는 다른 패키지에 의존할 수 있음

  • 특정 패키지를 설치하려면 필요한 종속 패키지가 자동으로 설치됨
  • 패키지를 삭제할 때, 의존하는 다른 패키지가 있으면 삭제 여부를 확인함

RV가 특정 패키지를 설치할 수 없는 경우:

  • RV 버전이 너무 낮음 – 패키지가 최신 버전을 요구하는 경우
  • 의존 패키지가 누락됨 – 수동으로 의존 패키지를 추가해야 할 수도 있음

5️⃣ RV 패키지 직접 만들기

RV 패키지는 Mu 또는 Python 기반으로 개발 가능

기본 패키지 구조

my_package.rvpkg
└── Contents/
    ├── Mu/
    │   ├── my_script.mu
    │   └── another_script.mu
    ├── Python/
    │   ├── my_script.py
    │   └── helper.py
    ├── SupportFiles/
    │   ├── my_icon.png
    │   └── my_texture.jpg
    ├── ConfigFiles/
    │   ├── settings.cfg
    │   └── preferences.json
    ├── lib/
    │   ├── my_library.dylib (macOS)
    │   ├── my_library.so (Linux)
    │   └── my_library.dll (Windows)
    └── package.xml  # 패키지 메타데이터

🔹 패키지 메타데이터(package.xml) 예제

<Package>
    <Name>My Custom RV Package</Name>
    <Version>1.0.0</Version>
    <Description>RV에 새로운 기능을 추가하는 패키지입니다.</Description>
    <Author>John Doe</Author>
    <Email>john.doe@example.com</Email>
    <Dependencies>
        <Package>SomeDependencyPackage</Package>
    </Dependencies>
</Package>

Mu 또는 Python으로 개발 가능

  • Mu 기반 패키지 → Mu/ 폴더 내 .mu 파일 작성
  • Python 기반 패키지 → Python/ 폴더 내 .py 파일 작성

🔹 마무리

✅ RV 패키지를 활용하면 다음과 같은 작업이 가능

  1. RV의 기능을 쉽게 확장 및 커스터마이징
  2. 자동 설치 및 제거 가능하여 유지보수 용이
  3. Mu 및 Python을 활용한 스크립팅 및 플러그인 개발 가능
  4. Nuke, OpenColorIO, Maya 등과의 연동을 위한 패키지 활용 가능

🚀 이제 직접 패키지를 만들어 RV를 커스터마이징해 보세요! 🎯

https://aswf-openrv.readthedocs.io/en/latest/rv-manuals/rv-user-manual/rv-user-manual-chapter-ten.html